Part of the blame lies on the company for not giving the employee a growth path, but the largest part lies on the employee for not continuing to grow on their own. Software as a profession is one where you have to constantly be learning. People need to know going in that it is ultimately their responsibility to keep their skills growing and up to date.
This is the most spot on thing I have read regarding this issue and is why interviewing is so challenging when it comes to developers. This is also why the interview process for developers is so grueling and long. You would be amazed how difficult it is to figure out how much ACTUAL learning experience a person has vs. someone that has done the same thing for 10 years.
I also feel this is why 20-somethings are popular, at least you know for certain how much experience one could possibly have.
Personally if I feel I'm no longer learning then I raise it with my manager. If after a few months nothing has changed then I start interviewing.
This is one thing that software shares with engineering disciplines
Reading the article, I don't think "Now, life at a traditional office was not that bad: barely any work to be done, it mostly involved sitting at a desk and writing some emails all day. " means he had a developer job.
If you don't have work to do and you aren't learning and progressing then you aren't doing software development, at least not properly.
There are "unemployable" developers out there, but they are 10-20 years older and have 15 years of niche in-house platforms in some huge enterprise, and now they have no experience with anything anyone recognizes.
Unemployable because just 1 company on CV, no degree and around 40? Sounds strange.