Actually in my vernacular, no problem, meaning, think nothing of it, is appropriate for all small social interaction. You're welcome would be used more serious occasions. That man is likely backwards as a consequence of being too old. Just forget what words mean.
I've always been in the habit of saying "no problem." An older lady I work with told me one day how much this phrase annoys her. I'm still not really sure of her reasoning; I guess she is just from another generation and "you're welcome" seems more formal to her and therefore more polite. I think either are fine. "no worries" kind of annoys me, however.
The kids use no problem far more than I would. It is at least polite and an acknowledgement. I probably tend to say you are welcome or my pleasure more than no problem. Probably in part a generational thing.
i say them both. often in quick succession, when someone keeps thanking me repeatedly for the same thing, and it feels awkward to just repeat myself. i guess i probably say "no problem" about 2/3 of the time. i hate greetings that are phrased as a question that should be answered, when the person doesn't want an answer. like "how are you" or "what's up." i never know how to respond. if you do a simple "hi" or repeat whatever question they asked, they look at you like you're crazy. if you answer the question, they look at you like they're thinking "i don't give a fuck, why are you telling me this?" if you answer the question and then ask how they are or what's up with them, they don't even acknowledge that you said anything, and either just walk away or completely change the subject. you just can't win.