What is more likely with the 35 number is that these are multiple simultaneous contracts. When working as a contractor you're fixing that problem or that project. The company isn't going to have you around for longer than a month after it's been fixed and documented.
There's no reason to spend company resources on training a person any more than there's reason for you to pay a plumber to be reading "learn to be an electrician in 10 days" while they're supposed to be working on fixing the sink or doing the plumbing for new construction.
You just spent $250k and 5 years in college learning stuff.
You get hired to do a job for money.
What "investment" do you expect company to do?
Give me number of weeks and amount of dollars per year and tell me how it stacks against $250k and 5 years that you just spent?
If you want to learn on the job, shouldn't YOU be paying the company for teaching you, like you pay college to teach you?
The core concepts covered by a good CS curriculum haven't really changed. Specific languages were never the focus.
Any $PROGRAMMER_TITLE worth their salary can learn a new stack for a project, because they know the fundamentals. BUT there's still a lead time on being comfortable with new languages, frameworks, problem domains, etc. It's this kind of time and effort that I am trying to get at when discussing companies paying for training/education. It can be worth investing in your people if your goals are longer horizon.
I don't think it makes sense for companies to pay for their employees to learn basic data structures or other "prerequisite" fundamentals, though. That would be a large investment!
In my experience, a lot of the Rust fighting with the borrow checker is really just enforcing better quality code I should've been writing anyway.