AI versus Junior Developer. A Project Manager’s Choice.
As a project manager in my day to day job I can say that the AI revolution that has taken over the IT world in the last years has made the software engineering industry a very confusing and volatile space. Before the emergence of AI things were pretty simple: talented developers created great code. IT companies were always looking for young and talented developers since they were a guarantee of success. Today, it’s not that simple anymore. Allow me to elaborate.
The choice
Let’s say that you have an allocated budget and you have to choose between using that budget to create a new entry-level software developer position or invest that money in purchasing a premium AI subscription for your existing team. From a strictly financial point of view, the AI option is far less expensive than creating a new position. This means money is saved, the company is happy and your team has a very powerful AI tool at their disposal which should considerably boost their productivity. At a first glance, it looks like a very simple choice. But if you go in a bit deeper and looks towards the future, things start to get more complicated.
So let’s assume that you decide to go with the AI option. Your senior developers love the fact that their life will become easier having such a powerful AI companion to help them. They start using it and life is good. Productivity increases, a lot more features are added to the product in a shorter time and even the testing team starts using AI to plan and write their tests. The new release is rolled out ahead of schedule and everybody is happy.
The aftermath
But before long, support tickets from customers related to the newly added features start to appear in the dashboard. No big deal. The senior developers that implemented those features will take care of them. The problem is that 80% of that new code is generated by AI. Developers scramble and try and reverse engineer what the AI wrote in order to find the source of the issue. Days go by, even weeks and finally the bug is found and fixed. Two weeks wasted to find the the AI did not properly check certain pointers for NULL values before using them. Even a junior developer would have done that properly. Life is not that good anymore.
Other issues start to appear, issues that should have been part of the main test sets for the new features. But AI also wrote the majority of those tests. It looks like it missed some basic scenarios and parts of the application went in production untested. This looks an awfully lot like Microsoft’s Windows updates in the last months. Remember that Microsoft was one of the big tech companies that leaned heavily into using AI for their development process.
The solution
At this point, companies have senior developers at their disposal to clean up and fix the messy code generated by AI. But what will happen when these developers retire? Who is going to clean up the code then? These are questions that big tech companies should ask themselves sooner rather than later. Is is worth loosing an entire generation of talented developers just for that sake of making a quick profit?
So, from my point of view, the solution is, as always, somewhere in the middle. You should hire that talented software developer and you should give him access to AI tools that will help him learn and make him more productive. The two options should not be exclusive, they should work hand in hand. AI should not be an evil tool that wants to take everybody’s job. It should be a tool that augments us an makes us better.
Subscribe to our newsletter and we will notify you every time we release a new article.
