Your friend is correct—you should not ordinarily use expressions like when I was a kid to modify a present perfect clause.
However, the term he uses to explain this, specified, is wrong. Don't blame your friend— this explanation was developed some forty years ago, at a time when linguists were wrestling with what was called the "Present Perfect Puzzle", and since then it has been passed on to several generations of English teachers. In many cases it looks like a valid explanation: for instance, it seems to "explain" why I have finished at 7 o'clock last night is not grammatical.
But in fact the "rule" involved here has nothing to do with specificity. The best contemporary understanding of the rule is that
because the present perfect is a statement about the present it may only be used with time expresssions which include the present.
Expressions like at 7 o'clock last night and when I was a kid designate moments or timespans which lie entirely in the past. That is why they cannot be used within a present perfect clause.
Note, however, that there are exceptions to this rule. These are tricky "edge cases" where the time expression doesn't actually modify the present perfect; you may read about them here.
Note, too, that the rule is often violated in casual improvised speech and writing, where people have no opportunity (or desire) to plan what they're saying, or to edit it into strict grammaticality. So when you encounter a violation, consider the register—is it formal or informal?—before you rush off to ask us "Why?" In most cases it's just a mistake, and not a particularly important one.