Regarding the Future of Junior Engineers
I went to Container Days London yesterday. It was great to see friends and old colleagues again. The conference was great, with many interesting talks and the one and only Kelsey Hightower sharing little pearls of knowledge.
While everything was awesome, I have to say that the mood around AI and the future of engineering was all doom and gloom. This materialised in a few conversations in the priceless Hall Track about the future (or lack of) Junior Engineers.
I did try to convey a different message, but eventually I decided to observe and listen to better understand what’s going on.
In summary, the majority of conversations were very single-threaded: because Coding Agents are going to write all code, software engineers are going to lose their jobs, in particular, junior engineers were going to struggle to get into our industry because whatever it is they could do, is going to be done by an AI Agent.
There’s no doubt that our industry is changing, but we will have to accept that change has been constant. Moreover, the pace of that change has been increasing.
Do you remember how long it took for virtualisation (and the cloud) to settle in? Puppet, Chef and all the config management tools? Docker? Kubernetes? If anything, our industry has been dealing with more change and faster than any other industry, so what’s different now?
Not much. When I hear people saying that we all are going to lose our jobs what I really hear is people being afraid of the change. Being afraid of not being able to adapt and grow, which is very natural, but let’s face it, we’re experts at dealing with change by now.
Are we going to do things differently? absolutely. Are we all going to be replaced by AI ClawBots-like? Don’t think so. They will take the burden of executing tasks, but we will not be replaced (that easily) by a Ralph-loop bot, not just yet.
What about junior engineers? well, they’re going to be alright. When I mentioned this yesterday people looked at me as if I had been hiding under a rock and was not witnessing the collapse of our status quo. I haven’t, quite the opposite.
Junior engineers lack experience, we’re going to agree on that, however, their role is not just writing code, their fundamental role is to help more senior engineers with tasks that they can handle (and yes, with Coding Agents they can handle a way more we all might want to accept). Teams are not created because writing code is hard, teams are created because time and resources are limited. Junior members of the team come with less experience, but they’re cheaper and they have time and they’re usually very motivated on learning. They will come and learn the new tools and follow the direction of more senior engineers. They might not code anymore the way we used to, which is what’s really at the core of this brutal change, but they’re useful because they bring dedication and time, and while you might buy a Max subscription to all the AI Coding agents, you’re not going to buy more time.
I’m not sure where this toxic narrative comes from. Certain AI companies have a vested interest in making people think that you can replace your engineers with their product, but let’s not lie to ourselves; that message is marketing. As far as I know, crystal balls only exist in certain books. Teams provide expertise, accountability, judgement and operations. AI increases the throughput. I cannot see many companies trading accountability and judgement for 10x increase on lines of code.
In summary, is our industry changing? Oh, boy, it is indeed. Are we all doomed? not really. Wearing my mentor hat, I’m going to say that you should not let the impostor syndrome grind you down this hard. We’re valuable not because we know how to write code, but because we know how to build and run things (running things is worth another article, but not here, not now).
I understand you’re all scared, but just go to ChatGPT, ask for a strategy document, ask for an implementation plan, and let Claude Code implement it, let it unfold in front of you… The quickest way to retire early.
Reality is not as simple, is it? What’s the catch? A team is not a bundle of people who can execute tasks. A team is a complementary set of expertise with a common goal. The value you bring to your team is more than your capacity to execute tasks. Juniors look up to you not because you can write Go, but because you have expertise and experience. They don’t want you to teach them to code. They want you to help them become better engineers, and an engineer’s main role is to solve problems using tools. We have a new set of tools that is redefining what’s possible. This is great, there’s so much opportunity out there.
Just embrace the change and delegate. You and the junior members of your team will be happier.