Zero. That’s how many lines of code some of Spotify’s best developers had written since December, according to what the company shared in February 2026. Their job now is directing AI agents and reviewing what comes back. Depending on who you ask, that’s either the most efficient engineering org on earth or a very expensive experiment in institutional forgetting.
I test AI coding agents for a living. I want them to be good. And I’ll tell you what worries me, which is not that the models are bad at writing code. It’s that they’re good enough to pass the checks we use to decide whether code is good.
Passing review is not the same as being right
Large language models are exceptional at the specific things a pull request review actually measures. They hit static parameter checks. They produce predictable design patterns. They follow a uniform style guide more faithfully than any human on your team, including the person who wrote the style guide.
That combination is a problem, because most code review is pattern matching under time pressure. A reviewer skims for the shapes of mistakes they’ve seen before. AI output has none of those shapes. It’s tidy, consistently named, appropriately commented, and structurally familiar. It looks like code written by someone competent and slightly bored.
Then it goes to production and doesn’t hold up. AI-generated code frequently lacks reliability once real traffic and real edge cases hit it, and the resulting technical debt accumulates in a form that’s genuinely hard to spot. Not ugly debt you can point at in a retro. Clean-looking debt spread across forty files that all individually passed review.
Skill collapse doesn’t require model collapse
There’s a version of this argument that depends on AI models degrading as they train on their own output. Ignore it. You don’t need model collapse for this to go badly. You just need people to stop practicing.
Coding expertise is not knowledge, it’s a set of reflexes. Knowing where to put a breakpoint. Sensing that a function is doing too much before you can articulate why. Recognizing the specific smell of a race condition from a flaky test that fails once every two hundred runs. None of that comes from reading code. It comes from writing code badly, breaking things, and sitting with the consequences.
Review-only work does not build those reflexes. It exercises recognition, not production. And recognition decays faster than people expect, because it was never a separate skill in the first place. It was a byproduct of doing the work.
Which means a global shortage of people who can actually debug a system under pressure is a few years out, not a few decades. The senior engineers reviewing AI output today are spending down expertise they built the old way. They’re fine. The people who never built it that way are the ones I’d be asking about.
The oversupply nobody wants to revisit
Worth sitting with the uncomfortable counterpoint. The so-called golden age of software hiring also coincided with a collapsed barrier to entry and an oversupply of developers doing low-value, high-churn work. A lot of what AI is now absorbing was never expertise to begin with. It was CRUD, glue code, and tech-for-tech’s-sake.
Fine. Automate it. But notice that low-value, high-churn work is exactly where junior developers used to earn their reflexes. It was the gym. If you close the gym because the exercises were pointless, you get a generation of people who look strong in a code review and fold the first time something breaks at 3am.
What I’d actually do
I’m not telling you to stop using agents. That advice ages badly and nobody follows it anyway. I’m telling you the tooling has outrun the verification, and the gap is where careers quietly rot.
- Stop treating a passed PR as evidence of quality. If your review process only measures the things models are best at, your review process no longer measures anything.
- Make someone rewrite AI output from scratch occasionally, without the agent. Not for the code. For the person.
- Track architectural drift, not diff size. Clean code that quietly pulls your system in the wrong direction won’t show up in any metric you currently watch.
- Give juniors problems the agent can’t finish. Ambiguous ones. Ones where the hard part is deciding what to build.
The Spotify story got framed as a milestone. I read it as a bet, with a long payback period and no obvious way to unwind the position. If the models keep improving, it pays off. If they plateau while the humans who could have caught the difference have moved on to reviewing, somebody’s going to need to write code again, and the people who remember how will be able to name their price.
🕒 Published: