{
    "componentChunkName": "component---src-templates-blog-post-js",
    "path": "/the-bottleneck-has-moved",
    "result": {"data":{"markdownRemark":{"id":"d0164ebc-8257-5685-bf45-306c46551ba8","html":"<p>The question used to be \"can the AI do this?\" That question is mostly settled. The interesting question now is \"have I set it up to succeed?\"</p>\n<p>The threshold for handing off to an agent has dropped substantially over the past year. Not because the models are dramatically better — they're incrementally better — but because the tooling around them has matured. MCP makes connecting agents to your tools straightforward. CLAUDE.md patterns mean you can brief an agent on your codebase conventions once and they hold across sessions. Context management has improved. The infrastructure for reliable handoff exists now in a way it didn't a year ago.</p>\n<p>So the work has shifted. Less time deciding whether to use AI, more time on setup — clear scope, right context, constraints spelled out upfront. The quality of the output is mostly a function of the quality of the briefing. Garbage in, plausible-looking garbage out.</p>\n<p>Which makes reviewing the new bottleneck. AI-generated code lives in the codebase. I review it, I merge it, I'm responsible for it. If I can't read it critically — spot the over-engineering, the incorrect assumption, the plausible-looking but wrong logic — I'm accumulating risk quietly. That's the core skill right now.</p>\n<p>Though I'm genuinely unsure how long that stays true. Models are getting better at reviewing too. English is increasingly the primary programming language. When the review bottleneck moves, what's left is further upstream — whether the approach is right, whether the thing you're automating should be automated at all, whether the abstraction makes sense for where the product is going. Those questions don't compress well into a prompt. At least not yet.</p>","excerpt":"The question used to be \"can the AI do this?\" That question is mostly settled. The interesting question now is \"have I set it up to succeed?\" The…","frontmatter":{"date":"March 22, 2026","slug":"/the-bottleneck-has-moved","title":"The bottleneck has moved","description":"The question used to be \"can the AI do this?\" That's mostly settled. The interesting question now is what comes after reviewing.","featuredImage":{"childImageSharp":{"gatsbyImageData":{"layout":"fullWidth","backgroundColor":"#c8d8e8","images":{"fallback":{"src":"/static/697dcafab15517b8cd753b6e50216730/45171/lukas-blazek-GnvurwJsKaY-unsplash.jpg","srcSet":"/static/697dcafab15517b8cd753b6e50216730/a1f66/lukas-blazek-GnvurwJsKaY-unsplash.jpg 750w,\n/static/697dcafab15517b8cd753b6e50216730/b85ad/lukas-blazek-GnvurwJsKaY-unsplash.jpg 1080w,\n/static/697dcafab15517b8cd753b6e50216730/73892/lukas-blazek-GnvurwJsKaY-unsplash.jpg 1366w,\n/static/697dcafab15517b8cd753b6e50216730/45171/lukas-blazek-GnvurwJsKaY-unsplash.jpg 1920w","sizes":"100vw"},"sources":[{"srcSet":"/static/697dcafab15517b8cd753b6e50216730/f80d9/lukas-blazek-GnvurwJsKaY-unsplash.webp 750w,\n/static/697dcafab15517b8cd753b6e50216730/c0d00/lukas-blazek-GnvurwJsKaY-unsplash.webp 1080w,\n/static/697dcafab15517b8cd753b6e50216730/0dd88/lukas-blazek-GnvurwJsKaY-unsplash.webp 1366w,\n/static/697dcafab15517b8cd753b6e50216730/ddcb4/lukas-blazek-GnvurwJsKaY-unsplash.webp 1920w","type":"image/webp","sizes":"100vw"}]},"width":1,"height":0.6625}}}}}},"pageContext":{"id":"d0164ebc-8257-5685-bf45-306c46551ba8","previous":{"id":"0e0430b9-27d1-5eb9-b239-c5640eae2990","frontmatter":{"slug":"/how-i-stay-on-top-of-ai-in-2026","template":"blog-post","title":"How I stay on top of AI in 2026"}},"next":{"id":"a6302d39-2ad0-530c-a003-5711313b10d6","frontmatter":{"slug":"/","template":"index-page","title":"Hi, I'm Erik"}}}},
    "staticQueryHashes": ["228695001","2744905544","358227665"]}