The message: You don't have to learn much to be a software engineer just master the discrete fields of object oriented programming, web development, ux design, artificial intelligence, building compilers, and cryptography.
If you master one of these fields, you'll be doing well. I agree on taking an intro to each of these, but only to figure out which one you want to specialize in later on and because it's nice to know something about other related fields. You won't master all of these in your career, so don't let the list intimidate you.
I read your comment first, then I clicked through to see if they really suggesting "mastering" all of these fields (which is nigh impossible as you suggest.) They just say to "learn" them, and if by that they mean "take an intro-level college course on the topic" then I think it's pretty reasonable. It's my opinion that people should wait until after undergrad to specialize (in industry or academia.)
The author used the phrase "Develop strong understanding in.." in two places, "Algorithms and Data Structures" and "Operating Systems". The other fields are predicated by "Learn..", which I take to be a weaker recommendation.
I don't think you are disagreeing with the article. I took one of the crypto classes recommended. I did well, learned a lot, and enjoyed myself, but in no way does that mean I've mastered cryptography.
All in all the recommendations seem reasonably achievable in a few years of conscientious part time effort.
Anecdata: I've done quite well in my software engineer career without knowing much about compilers or AI (aside from what they generally do), and I doubt that I've "mastered" cryptography that much.
They're trying to increase the pipeline of software developers. One way to solve the problem of not being able to hire the workforce you need is to train more workforce. This guide is a very inexpensive way for them to increase the top end of the funnel at basically zero cost or obligation to themselves. The topics are pretty specific to the types of work you'd do at Google; they're good, although the field of software engineering is much broader than what's listed here.
I don't know if that's what they're trying to say but that's absolutely true, provided you're diligent, curious, and someone who does well with self-directed learning.
If you master one of these fields, you'll be doing well. I agree on taking an intro to each of these, but only to figure out which one you want to specialize in later on and because it's nice to know something about other related fields. You won't master all of these in your career, so don't let the list intimidate you.