I get the feeling from the poster that they are in a "blue collar" environment. Fully managed, working a specialized assembly line. No time for anything else but whipping up the next widget.
There are also SE jobs where you have to be everything. Tweaking servers, calling customers, designing and implementing backends, some frontend work, maybe even helping out with the company website. Meeting with CEOs of partnering companies. I don't see typical blue collar workers doing well in that sort of situations.
Generally I don't know, I certainly did fine in that type of environment (has been most of my career) - I don't think it's that dis-similar to a contractor (construction not soft-eng) who has to essentially run their own business and do similar types of things.
Some of the smartest (not necessarily academically) people I've worked with where in traditionally "blue collar" roles - most developers aren't that special or that smart (and I include myself in this) - at best we have an aptitude for computers that others lack.
I think the way we prepare programmers for industry would benefit much more from an apprentice model than what we currently do, though of course since I'm in the UK and that would require employers investing in employees so that'll never happen.
Somewhere like Germany could make it work better though since they have a stronger program for that stuff generally.
It's such a vast field that the vast majority of programmers aren't doing bleeding edge stuff.