Recently turned 61. I make $110k, 30+ years a developer. Currently work with Java on Search Engines. Spent most of my career in C working on chemical search engines. Happy to be healthy, alive, and still having a blast writing software
From my experience, software development is much more like writing than accounting or sports. In my experience writers vary a lot in their skill. Not everyone can write, and some writers are much better than others. Of course some not very good writers still create useful documents.
In my experience though writers are not fungible. No one would replace Shakespeare with a pulp hack, but that is really what a lot of this argument seems to me to be about
So offshore projects require the Waterfall methodology to succeed? What if requirements change? The design has to change and of course the code. I think you are exactly right, but the nature of development makes offshoring problematic. I have not yet seen good software products created over seas. Usually they need lots of work in-house (rewritten). In my experience the cost savings of offshore development is really creative accounting