I'm currently a frontend engineer. I told my team lead a while back that I'd like to transition to the server side, especially since our server team is woefully understaffed and our frontend team is overstaffed. He told me "Sure but you'll need to learn all that stuff on your own time". So I never did it because I'm interested in doing other things at home.
You ever think about how much we subsidize businesses by paying for college ourselves? The older I get the more I think the university to corporation pipeline is a fucking racket. It also sucks for employees because here comes these kids who were allowed to learn about all the new technologies you wish you knew with zero distractions and other obligations, now comin' in hot on your heels to take yer jobs en masse, an…
1. Generally, education leads to productivity. 2. College education is typically tranferrable -- learning CS topics improves worker productivity regardless of who they work for. 3. Education is sticky to the individual; it can't be repo'd (or confiscated by fascists / nazis). 4. Employers generally try to match wages to productivity. Even if they pay as little as possible, in a fair market they will have to be prepared to bid close to worker productivity or lose out to a competitor who will.
Given these factors, I think the status quo is going to do a better job optimizing things than requiring employers to pay for training. When deciding who should bear the costs of training, it's appropriate to remember who the benefits accrue to. It's not only fair, but also ensures the incentives are aligned. When the topic is general and tranferable, the benefits of training largely accrue to the trainee.
Which is why I'm sitting in a training class about how our software works and code review culture, and not one about Python or Go.