Name the problem plainly
Juniors used to earn their place doing work that was economically marginal and educationally essential: the CRUD endpoint, the small bug, the test backfill, the config change, the third variation on an existing form.
That is precisely the work that got cheapest.
And the mechanism that made it educational was the struggle. You spent three hours on a bug and came out understanding how the scheduler worked. Take the three hours away and the fix still lands, but the understanding does not arrive. You cannot get the learning without the friction, because the friction was where the learning happened.
So there are two distinct risks, and it helps to keep them apart. One is fewer junior roles. The other is juniors who ship a great deal while learning less than their predecessors did — and who look fine on every metric for about two years.
What is contested
Entry-level technical hiring has been weak in several markets since 2023. What is genuinely unsettled is why. It overlaps with a rate-driven hiring correction, post-2021 over-hiring, and offshoring shifts, and the studies attempting to separate these disagree with each other. Whether this is a temporary dip or a structural change in how teams are shaped is not something anyone currently knows. Treat confident claims in either direction as marketing.
What you can act on is narrower and safer: the skills that hold value are visible from the shape of the change itself.
What a junior should build now
Reading. The ability to take a 500-line diff in an unfamiliar codebase and say what it does, and what is wrong with it. This is the highest-value skill in the new arrangement and almost nobody teaches it deliberately. It is trainable: read merged pull requests in a large open-source project, write your own review before reading the real ones, compare.
Debugging from evidence. Reproduce, isolate, bisect, read the stack trace properly, add instrumentation, form a hypothesis that can be wrong. Models are weakest exactly where the information is not in the text — in the running system, the network, the data, the thing that only happens under load on Tuesdays. That is also where the hardest bugs live.
Fundamentals that do not rot. What a database index actually does and when it will not be used. What a lock costs. How a request becomes a syscall. Why p99 is forty times p50. Where memory goes. These are what let you smell wrong code without being able to say why yet, and that smell is what makes review fast.
Writing. Specs, decision records, review comments, incident write-ups. If specification is now load-bearing, the ability to write an unambiguous page is a technical skill, not a soft one.
Some work done the hard way, on purpose. Two hours a week, no assistance. Write the parser, the query planner sketch, the retry logic, the binary search. You are not being efficient. You are building the internal model that lets you review a hundred lines in ninety seconds later. A pianist practising scales is not trying to produce music.
If you manage juniors
The rung has to be rebuilt deliberately, because the economy will not rebuild it for you.
Give them review work, not only writing work. Have a junior review a senior's change, with a senior reading their review afterwards. This is the fastest way to build judgement and it costs a senior twenty minutes.
Make them explain code they submitted. Not as a test, as a routine. Fifteen minutes, walk me through this. If the explanation is thin, that is useful information about the change and about the person, and it arrives early enough to matter.
Put them on real incidents. Debugging a live system with a senior beside them is the highest-density learning available, and it is exactly the skill that is not being practised elsewhere any more.
Do not measure them on shipped output. It is the one metric the tool inflates most, and it will tell you a junior is doing well for two years, right up until they are asked to do something the tool cannot do.
The uncomfortable part
If teams stop hiring juniors because juniors are less immediately productive, they will find in five years that they cannot hire seniors, because seniors are made out of juniors and nowhere else. Every individual firm has an incentive to skip the training; collectively that is a shortage being manufactured on a delay.
You probably cannot fix that from where you sit. You can decide what your own team does, and you can notice that a team that trains people well will, in a few years, be one of the few places that has them.
Before you move on