The new Role of Software Developers in the AI Era
The debate around AI is often filled with uncertainty and even fear. There is uncertainty about what is truly possible and what might remain fiction for a while. And, of course, there is the fear of losing one’s job—trends we observe across industries worldwide. One of the most affected areas is certainly the software industry.
AI code assistants - just a hype?
One of the major enablers of AI in the industry are AI code assistants like Cursor, Copilot, and Cline—the latter being the open-source alternative, while the former are commercial options. There are also others like Ripple, which do not just code but also handle deployment and collaboration. And there are many more.
Here are just a few of the things AI code assistants can already do today:
- Generate the requirements based on the given input in a
- Make a plan for implementing those requirements
- Define architecture, including the technology stack, guidelines, etc.
- Generate scripts for building the infrastructure
- Write entire full-stack applications based on the architecture—with frontend and backend code
- Generate and run test cases
- Generate documentation
- And much more
I know many would argue that this is not really possible for complex projects. I am afraid this might have been true one year ago, but we are moving to a whole new level, and simply ignoring reality is not a solution if you truly care.
Reading these lines can be frightening for any developer, including myself, who spent their entire life learning all these skills. Now an AI can do all of those things in a matter of days and at a fraction of the cost?
Well, it would be too simple to say yes, but also too simple to say no. The answer, as always, lies somewhere in the middle.
Balancing AI and Complex Projects
On the one hand, AI can do quite a lot of mind-blowing things, including reasoning and planning. This might work quite well for a “hello world” application with a few hundred lines of code. However, when it comes to complex projects with hundreds of thousands of lines—projects that make up most of the software shaping our digital world—the story is different. Here is where software engineers and architects can still shine and play a major role.
Even complex IT systems can be built with AI. But they need to be managed with an iron fist or they will fail and cost companies even more than if built by humans.
Good Software Needs Good Management
One of the biggest issues we face with AI is hallucination and sometimes even the lack of personality. Large language models (LLMs) are trained with huge amounts of data, which do not necessarily match your own standards. In its raw form, AI represents the average. Therefore, your role as a software developer is to shape that raw (yet high-potential) “brain” to handle the most time-consuming and expensive tasks.
The Core Challenges in Solving Complex Tasks
At a high level, one of the core issues when leveraging AI for very complex tasks boils down to two major challenges:
- Every time you start coding, you start from scratch—unlike the human ability to retain knowledge over time. In practical terms, this means you either have to fine-tune the model so it retains the skill or feed it the necessary information in the context. There are strategies to make this easier, like long-term memory, but the problem remains that you must find mechanisms to recall the necessary information at the right time.
- By default, it has no “personality.” If you do not narrow down the context and carefully define your objective and constraints, coding with AI can become a nightmare sooner or later.
In order to mitigate these challenges, consider the following:
- Conform to standards by grounding your model with your own data—documents that represent your company’s policies, guidelines, documentation, etc.
- Fine-tune the model with your data and your code to become more familiar with your environment
- Look into long-term memory technologies like MemGPT, which can make information recall easier
- Feed it with frameworks and API documentation
- Peer review with a human or an AI
There are many more techniques.
Understanding the shortcomings and finding and using the right strategies will be at the forefront of the software industry in the post-GPT era.
We have only scratched the surface of what is possible, and this is certainly not the end. However, one core trend we are noticing—and I believe it is here to stay—is that the core skills of software engineers and architects will shift more and more away from execution and increasingly toward management and supervision of complex interconnected systems.
Member discussion