If a person had BCG shot as a child, will he always test positive when skin tested for tb?

Maybe. Often people who were immunized against tuberculosis w BCG will react to the tuberculin skin test (tst). However, some people do not, and we do not have good data on how long to 'blame' BCG for a positive test. Given this uncertainty, the first finding of a positive tst needs to be treated like a true positive in terms of further testing, such as w x-ray.
Yes. Most people vaccinated with BCG will always have a false-positive TB test. To rule out active tb, they need either a chest xray or the new qftb gold test instead.