Could we get rid of this "junior/senior" crap? I have never worked anywhere it was ever useful. You are a programmer - that's it. The only people that think otherwise are self-agrandising so-called "seniors".
I'll say it takes 3 to 18 months to become a domain expert at a company depending on the scope, if you are fresh out of school. Less if you already have relevant experience. And then years to become company/subject expert, and those you have to pay to keep them.