Will AI replace software developers?
Since its launch in November last year, the artificial intelligence chatbot ChatGPT has had a massive impact in just a few short months. Already, some schools have banned it as students quickly employed the bot to take shortcuts in their schoolwork, while debates rage on whether the bot will or won’t replace copywriters. It can also write code – so well, in fact, that when Google fed it a series of coding interview questions, its answers would have qualified it for an entry-level engineering position with annual compensation of US$183,000.
In my view, AI is not coming for anyone’s job. These concerns crop up with every major new technology that’s released, and while these technologies may change and shape the world we live in, it doesn’t completely replace it.
Exactly what these changes will be and when they’ll take place is not quite clear at this point.
ChatGPT is now roughly where Google was in 1999 - most people vaguely understood there was this thing called the internet and that it had value, but it wasn’t widely adopted and commercialised yet.
Right now, people are still trying different experiments to test AI technology like ChatGPT’s commercial value. Something will undoubtedly emerge that drives widespread adoption, but it hasn’t quite reached that stage yet.
Still, it’s much more likely to enhance human jobs and industries than to destroy it.
it’s much more likely to enhance human jobs and industries than to destroy it.
AI is a generalist, not a specialist. It can only do what it’s been taught to do by a human. So, wherever AI is applied to meet the needs of a specific enterprise, a human will have to ‘train’ it to do the job. Problems are not generic, they’re bespoke.
Take ChatGPT and copywriting as an example. It’s very efficient at writing ubiquitous copy such as automatic email replies, and doing so in a very average manner by using the common denominator of all the copy it’s been fed. As soon as you need creativity or a niche type of copy – say, a personal letter to your grandmother - it’s not very good.
You could, however, train it to write a specific type of niche copy and solve a bespoke problem. But you still need a human to train it.
This means it will likely replace repetitive tasks, freeing up humans’ time to focus on other things. In the software development sphere, machine learning can increase development speed by automatically testing software at every stage, for example. Testing that normally takes hours of hand coding could be done in just a few minutes. That developer’s job will change, yes, but they’ll get to focus more on problem modelling and solving, or even building new AI models to solve those problems.
And therein lies the caveat - those who don’t keep up with these changes could indeed lose their jobs. The software development industry always rewards those who are willing to learn new things. There’s always a new tool on the way to improve the status quo.
So, if you, as a developer, decide to specialise in one task and stick to it for your entire career, you will be out of a job soon - whether it’s replaced by AI or something else. It’s the nature of the industry. Continual learning is imperative throughout a developer’s career.
The same goes for companies. Technical debt only increases over time. The longer upskilling goes unaddressed, the sooner you’ll get stuck paying high costs in migration, hiring, or massive training efforts that could take months. Companies need to make sure they keep up with incremental upskilling, which will pay dividends in the long run.
With the right mindset, AI is a powerful tool for software developers to enhance their craft. And while it will reshape software development and force developers to acquire new skills, it's unlikely to replace them anytime soon.
The future of software development will require developers to have a growth mindset, continually learning and upskilling to stay relevant in a rapidly changing industry.