← Articles

Code review is the new bottleneck — when AI writes the code, who reviews it?

Code review is the new bottleneck — when AI writes the code, who reviews it?

The bottleneck moved, and most teams haven't noticed

For most of software's history, the slow part was writing the code. You thought about the problem, you typed, you got stuck, you looked things up. Output was gated by how fast a human could produce correct code.

That gate is gone. Copilot, Cursor, and the rest didn't make developers a little faster — they changed the shape of the work. A developer who used to open three pull requests a week now opens seven. Diffs are bigger. Whole features arrive in a single sitting.

Here is the part nobody planned for. Writing sped up. Reviewing did not.

Your senior engineers — the people who actually catch the subtle bugs — are the same people they were a year ago. Same number of hours, same attention span, same ceiling on how much code they can hold in their head at once. Meanwhile the queue in front of them doubled.

The constraint on shipping quality software didn't disappear. It moved. It moved from the keyboard to the review.

Why this gets worse, not better

If the only change were more code, you could maybe muscle through it. But AI-written code fails in a specific and nasty way: it looks right.

Human-written bugs often have a smell. A weird variable name, an obviously rushed block, a TODO left in anger. AI output is fluent. It has clean structure, sensible names, and plausible logic — and it is wrong in ways that don't announce themselves. An off-by-one in a boundary condition. A silently swapped comparison. A regression that reintroduces a bug someone fixed six months ago.

Now stack that against a reviewer with a growing queue. What does a busy senior engineer do with fifteen PRs and two hours? They skim. They read the parts that look risky and rubber-stamp the parts that look clean. And AI-written code looks clean.

So the failure mode is predictable:

Each of these makes the next one worse. This is the loop that quietly erodes quality on fast-moving teams — not a dramatic outage, just a slow rise in the rate of things that shouldn't have shipped.

Why the obvious fixes don't work

"Just review faster." You can't review faster without reviewing worse. Speed and thoroughness are the trade you're already losing. Telling people to go faster optimizes the wrong variable — it makes the queue move while making each review catch less.

"Hire more reviewers." For a 10–50-dev team, this is not a real option. Senior reviewers are the scarcest, most expensive people you have, and you don't hire your way out of a bottleneck that grows every time someone opens their editor. Even if you could, onboarding a reviewer to the point where they catch subtle regressions takes months. The gap opens faster than you can staff it.

"Slow down the AI." Nobody is going to do this, and they shouldn't. The velocity is real value. The answer is not to give it back.

The honest framing: this is a capacity problem where one side scaled and the other didn't. You fix it by scaling the side that fell behind — review — without pretending a human can suddenly do triple the work.

The resolution: scale review, keep the human deciding

If AI created the volume, AI has to help absorb it. But not any AI review, and this distinction is the whole game.

Most AI review tools fail because they're noisy. They flag style, restate the diff, and raise ten low-confidence "concerns" per PR. Reviewers learn within a week that the tool cries wolf, and they mute it. We wrote about exactly this in why teams mute AI code review — the problem is almost never that the tool says too little. It's that it says too much, and the signal drowns.

What actually helps at the bottleneck is review tuned for precision over recall: quiet on correct code, loud only when something is genuinely wrong. A tool that stays silent on the clean 90% earns the right to be trusted on the 10% — and lets your senior engineers spend their limited attention where it matters instead of triaging noise.

We put this to a blind test on excalidraw, an open-source codebase. We found three pull requests a human had reviewed and merged — two were later reverted in production for a regression, one was correct — and ran the reviewer on each original diff, blind, with no knowledge of the outcome. It caught both regressions and stayed silent on the correct change. No false alarm on the good code, no miss on the bad. The full write-up is in the excalidraw blind test case study.

That result is the whole point: it caught what a skimming reviewer would have missed, and it didn't waste anyone's time on the change that was fine.

The nuance that keeps this honest

AI review is assistive. It is not a replacement for the human, and any consultant who tells you otherwise is selling.

The tool narrows the field. It says "look here, this is probably wrong, here's why." A human still reads it, still decides, still approves. It runs in your environment, on your code, and it never merges anything on its own. The judgment stays where it belongs — with your engineers. What changes is that their judgment is now pointed at the few changes that need it, instead of spread thin across everything.

That's how you unstick the bottleneck without lowering the bar. You don't ask people to review faster. You give them a smaller, sharper pile to review.

Where to start

Start where the constraint actually is. If your team is shipping more AI-written code than it did a year ago, your review process is almost certainly the thing quietly holding back quality — even if it doesn't feel like a crisis yet. Point precise, assistive review at that queue before you point it anywhere else. We lay out the full sequence in an AI QA strategy that works.

If you want to see whether precise review catches what your current process misses, get in touch. We'll run it against your real code, in your environment, and you can judge the signal for yourself.

Want this running on your PRs?

Book a pilot →