The Death of the Junior Developer

I remember the days when we used to hire junior developers at Stepwise in order to catch the best talent just entering the market. Some of them were still at university and working for us between classes and exams. Stepwise was fortunate that in 50% of the cases we ended up with really interesting people, who grew quickly under our wings and quite quickly started to add value for the company and the customer. Those were beautiful times. It was fun to watch these young people and to benefit from their energy and enthusiasm. 

Unfortunately, those times are gone now. We haven’t hired any Junior Developers since July 2022, initially due to a crisis in orders from our Customers, while in 2023 ChatGPT appeared, which turned the software development market upside down. 

Currently, according to top Polish job boards such as Just Join IT or No Fluff, only >5% of all job offers for developers are for juniors. Why this change? 

Let’s take a look at 5 typical tasks a junior software developer gets:

1. Writing Code: Implementing simple features or components based on detailed specifications.

2. Bug Fixing: Identifying and resolving issues in existing code with guidance from senior developers.

3. Testing: Writing and executing tests to ensure code quality and functionality.

4. Code Reviews: Participating in code reviews to learn best practices and improve coding skills.

5. Documentation: Creating and updating technical documentation for the software components they work on.

Of course, there have always been more ambitious and capable individuals. However, this is the standard set of tasks that allowed juniors a soft entry into the world of software development at the beginning of their careers. 

Thanks to ChatGPT, which has incredible programming skills, all these tasks can be done by machine. Even better, each of these tasks has become an integral part of the available co-pilots. Our Seniors not only use such solutions but also treat ChatGPT (or other LLMs) to pair programming, code correctness discussions and the like. Quite simply, a Java Developer is able to discuss with a Python Developer (which Chat is) and vice versa, just to consult an unusual piece of code. A senior developer can quickly pick up on a new technology, ask for advice, or detect an anomaly that he or she has not picked up on their own. All of this, of course, with complete caution when it comes to data security. This is very important. 

Nevertheless, the conclusion is one. An experienced Senior Developer (not a self-proclaimed programmer with 3 years of experience) has increased his productivity several times over. If he knows how the LLM works, how to configure it and how to describe the prompt appropriately, he cuts out junior developers’ participation completely. I think that apart from juniors, all developers who are mediocre can also feel threatened. ChatGPT is a really good programming partner. Just like with a junior or mid, you have to control it and collaborate. However, the cost is incomparably lower. 20 USD/month versus…. and here you can enter any amount of monthly salary of less experienced developers in your country multiplied by their number. 

Sound like the apocalypse? Not for everyone. Firstly, business reduces software development costs significantly. Secondly, an experienced team increases its productivity, making it more attractive to its stakeholders and in the job market. ChatGPT is of course not infallible and tends to be hallucinatory. On the other hand, just as in the case of the junior developer, the Senior Software Engineer has to check the chat response, only this time the cost of this operation is incomparably lower on a global scale. There is another aspect, namely the human factor. The ChatGPT does not need to be trained in the rules of the organisation, it does not need to be shamed, but neither does it need additional benefits or a ping pong table. 

I wondered how to summarise this article. It seems to me that, taking into account everything I have written, new junior developers without experience will have a much harder time entering the job market. A degree alone or purely theoretical knowledge will not be enough. Employers will pay even more attention to interpersonal skills and to the juniors’ own projects and proactivity. Their repo on github will be even more important than before. I also believe that familiarity with tools such as ChatGPT from OpenAI will be of considerable importance. If juniors know how to use such tools, know the basics of Machine Learning and DevOps and not just pure software development it will make it easier for them to find their way in increasingly multidisciplinary IT teams. 

To the others who are hoping that somehow it will happen and they will all learn by the Seniors, I sincerely sympathise. This is not a good time for Juniors in IT.