My Take:
I’ve been coding professionally since ~1985. I am extremely bearish on the “software development for hire” industry, including companies like web development, app development and software development firms. And large employers like Amazon and Meta have explicitly said they’re cutting their coding headcount.
the industry as a whole is definitely contracting as a result of both AI coding as well as the increasing quality of DIY solutions like Squarespace for small-business websites.
In fact, we’ve seen this trend several times over the past two decades – when a DIY solution gets “good enough,” we as software engineers basically need to move “up the value chain” and stop trying to compete with DIY. This happened about 10 years ago with Shopify, which allows you to create a good e-commerce site with no code and a few hours of setup. In 2005, I would have charged $10k+ for a site that you can get via Shopify for less than $100/mo today. The DIY tech just didn’t exist back then, so it was costly to set up secure transactions for e-commerce sites. After Shopify was released, we generally moved away from “easy” e-commerce projects.
The same happened with Squarespace over the past few years – there are many clients who paid me $5k+ for simple marketing sites (e.g. a restaurant) where I now just tell them it’s more effective to do it themselves.
Today, we’re seeing the range of what you can “do yourself” as a non-coder expand dramatically. In fact, I see some schools teaching a lesson for AI Consultancy Project students in a couple weeks about vibe coding, which I will simplify to mean “using AI to build real software even though learned how to code just a little.”
It’s awesome, and we’re seeing a lot of students jump from “beginner tech skills” to “building real stuff for clients” without ever having to do the multiple years of study to become a software developer. Of course, there are nuances and drawbacks to this – but it is undeniable that you can build pretty good stuff solely with prompts, without needing to be an expert coder.
Previously, you had to work really hard to be good enough to do this (somewhat boring, repetitive) job, and it was often fun because you got to build stuff (or got paid really well by a prestigious company). Now, everyone can become pretty good at coding in a matter of hours, rather than years. This pushes down the value of software engineering.
While those jobs won’t totally disappear, I think it’s important to recognize that supply of coders (AI and human) is now nearly infinite. The demand may be high, but it is not infinite. That means that the cost / price / value of coding has to go down.
At some point in the near future, we will reach the maximum amount of demand for coders. Then, AI will continue to get better and fill even more of that demand. The only possible outcome of that series of events is that there will be fewer jobs and/or a lower average wage for human software engineers.
I’ve been playing with Claude Code recently, if you know what to tell it to do it’s scary, how good it is. The key is to make sure you build out your projects scaffolding first, don’t let it try to determine which versions of libraries you need, you need to work that out up front, or else you’ll get incompatible libraries.
But then what will we do with all those Indian H-1B IT departments?
I've been writing software professionally since 1972, and never once considered myself to be a "coder". Software engineer, hardware engineer, embedded engineer; but, never a "coder". A "coder" is just this side of a keypunch operator, a copy-and-paste artist at best.
Pitiful, derogatory term.
...been coding since ‘83, as a kid, leading to a career in all sorts of software - embedded systems, web front/back, custom database apps, safety critical systems, graphics rendering engines, that has evolved toward automotive vehicle architecture, where it all comes together.
I agree with many aspects of your post. Things are evolving more rapidly. AI is disrupting. Capabilities are more available to more people, without traditional backgrounds.
That said, they’re not ‘software engineers’. Similarly, when I hear, “today’s kids know how all this stuff works”....no, they don’t, they know how to USE technology that has been made easy to use for non-technical people. E.g. smartphone.
There’s not enough software engineers, especially for industries where safety critical applications are involved....’software is eating the world’. AI enables better productivity - but the appetite for more productivity will only grow because of it.
Yes, the workforce will shift, it always does. I just don’t believe it’ll radically reduce the need for developers, it’ll just spread out the spectrum of skills needed for a greater range of needs. Even for those that do lower-level software, or safety critical systems, AI can help with productivity - but cannot replace (liability). It allows a team to be more productive, when we’ve decades of work to do. I still need more people, not less.
Things like web applications, especially just for presentation, marketing, and e-commerce, are easier targets. Complex custom systems (esp. safety critical) require full completeness of requirements, which has always been the problem - the customer never provides 100% requirement completeness (nowhere close). This is where real skill comes in, deeply understanding the problem. This is where AI falls, at least today.
Nobody knows how this will all play out. AI is accelerating because of AI. I’m not sure where we’ll be in just 5 years. Maybe I’ll be proven wrong. What we can’t do is stop educating each generation of how all this stuff actually works, real computer science.