Home Latest

latest / Juniors in the age of the bot

The question I get most often these days, usually from someone slightly older than me at a coffee, is some variant of: should we still hire juniors? The bot writes code. The bot writes code faster than the junior. The bot doesn’t need three weeks of onboarding and a buddy and a 1:1 schedule. Discuss.

I think the question is the wrong one, but I understand why it gets asked. Let me try to answer the right one, which is: what is a junior engineer actually for, and does the bot replace that.

A junior engineer is for:

  1. Being the senior engineer in three years.
  2. Asking the dumb questions that turn out not to be dumb.
  3. Doing the work nobody else has time for, badly at first and then well, and learning the codebase in the process.
  4. Reminding everyone what it’s like to encounter the codebase fresh, which is the only honest signal you have about your own documentation.

The bot does (3), sort of, for a narrow definition of (3). It does not do (1), (2), or (4). It will not be the senior engineer in three years. It will not ask the dumb question because it does not know which questions are dumb. It will not encounter the codebase fresh because it has no persistent encounter at all.

If you stop hiring juniors because the bot is faster, you are not making a hiring decision; you are making a five-year decision about whether your company has senior engineers in 2030. Which: it might not. Lots of companies might not. That’s a separate, much worse problem, and I don’t think enough people are taking it seriously.

What does change, I think, is what juniors do in their first six months. The “type out boilerplate to learn the syntax” pedagogy is dead, because the bot will do the boilerplate. The replacement, as far as I can tell, is reading. A lot of reading. The new junior skill is the ability to look at generated code and ask, calmly, whether it’s actually right — which is the same skill seniors have been trying to teach for thirty years and finally have a forcing function for.

So: hire the juniors. Pair them with the bot. Pair them with the seniors. Make them read more code than they write. They’ll be fine. The industry, maybe less so, but the juniors will be fine.