I don't see why Google couldn't do that today.
I'm not saying they are morally obligated to do so. At the end of the day they are a for profit company and they don't have to do anything at all about this problem. And, sure, the donations they are making instead are probably better than nothing. But as I mentioned, and as top19 mentions on what is as of this writing the top post on this article, the track record for these job retraining programs going back decades isn't very good.
What I'm saying is that if Google were to go to Pittsburgh, Youngstown, or Detroit, hire some bright unemployed people, pay them a decent but by no means exorbitant salary while it taught them how to code and then, as you point out, how to be a productive engineer at Google, at the end of the process those people would likely have very marketable skills to either continue moving up the ladder at Google or elsewhere. Of course this would cost Google something -- not only in the salaries while people were learning and not contributing but also in the salaries of people that were training and mentoring them. But Google is planning on spending a billion dollars anyway, so here's another way they could do that. A way that I think would be more effective.
--
Congrats on getting what sounds like a great job.