However, my thesis in this particular topic is not that I myself am unable to find work, but that a great many of my colleagues cannot, despite being highly qualified.
I do believe that those who employ coders, cannot find enough qualified staff. I've been hearing that very same complaint from so many people for so many years that I really don't buy the argument that they're just trying to drive our pay scales downwards.
I feel that there is a deeper underlying cause.
In the entire nation of Canada, one cannot publicly denote oneself as an "engineer" of any sort, unless one is the Canadian equivalent of a PE. In my own case, it was flatly illegal that I did so, as I did not have a professional software engineering license, had not served an apprenticeship, and had a physics rather than a software engineering degree, however I was completely prepared to defend myself in court, as I regard myself as a far, far more competent engineer than the vast majority of "engineers" that I have ever personally met.
(Note that a "software engineering" degree is quite a different thing than a "computer science" degree.)
I'm completely cool with just about anyone calling themselves a "Computer Programmer", but I'm not cool with just anyone calling themselves a "Software Engineer".
Consider that I'm damn near clueless about computer science.
What I can do is write code that is completely flawless, runs fast and uses very little memory. I can also take a total rat's nest that someone else wrote, and get all the bugs out of it.
> During the dotcom bubble anyone that could click a button was hired. But it was a bubble.
I got my first private-industry coding job in 1986."The better demonstration of grasping computing technology is actually having done something with a computer".
So you do care about experience.
I'm not saying that there aren't ANY employers who respect unpaid experience, just that they are uncommon.
Quite commonly I offer to provide sample source for programs I've actually written. No one ever wants to look at my source - they only want to know that someone else has paid me.
I don't. Probably your definition of "engineer" is different from mine.
"Another problem is that us engineers are expected to have real-world, paid experience in whatever technology the hiring company uses"
Generalization and obviously not true. I have a company, I don't care about paid experience, in fact we hired lots of people from open source projects, or directly from University with no experience at all.
"At one time, a college degree and a demonstrable grasp of computing technology was all one needed. Companies were happy to train. No longer."
During the dotcom bubble anyone that could click a button was hired. But it was a bubble.
The better demonstration of grasping computing technology is actually having done something with a computer.
When computers filled a room it was impossible for people to code on their own. Now you could find people with college degree AND experience writing software for others or for their own.
"yet one cannot get a job writing Swift code, unless one already has PAID Swift experience on one's resume."
This is your belief not reality.
"It's not enough to just read a book."
Of course. Programming is not about reading books. The better programmer is not the one who reads the most books.
In fact, I consider books obsolete. Everybody in my company has free Lynda accounts.