Back to Writing
3 min read

Capacity Overhang Haunts Us All

Coding Agents (LLMs) completely changed what it means to be a developer - increasing accessibility and productivity so much so that “vibecoding” became nomenclature in 2025. Now, the same guy that coined “vibecoding” - Andrej Karpathy - recently shared his own anxiety on the matter.

This is called “Capacity Overhang” - when the power of a tool builds up faster than the systems, rules, and people meant to control or use it can keep up with. In the context of Karpathy's tweet, this overhang means that, in order to be an effective developer, not only do you need to master everything you had to before coding agents, you now have to master a whole NEW layer of skills.

It’s evidenced by the dev tool platform EXPLODING over the last year. Each platform can have literally hundreds of integrations, and the optionality is overwhelming for developers to manage. They introduce learning curves that exist outside of the actual implementation: navigating various pricing models, vendor lock in, customer service, APIs, UIs, regulatory restrictions, it goes on. Worst of all, we’re in this messy period where everything is changing all the time which compounds all of this.

Unfortunately by my observation online, the dev community not having a really consistent stance on LLM assisted coding, making this a really lonely problem. Open any developer subreddit and you’ll see the senior Devs denialism, preaching that vibecoding isn’t worth your time unless you’ve spent 10+ years mastering everything in your stack before it could ever be productive. Which, on its face, sounds like a dangerous, gatekeepy-take. Then again, to their point, maybe I’m just dumb and naieve.....I digress.

Just as engineers have had to keep up with the influx of new microservices and data-driven / event-driven architectures in the advent of "Big Data", the same goes with AI. Except, with AI, the new layer will reward the engineer by making them “10x more powerful”. Mastering this new layer + the 'underlying' layers are not mutually exclusive.

To me, this is the layer that, if mastered for leverage, becomes serious moat. Sure, one can interpret this as some driver for engineers to fear their jobs more than ever, which I don't disagree with, but it's incomplete. It implies that the threat that's driving engineers to absolution is the existence of the new layer of the stack not by their engineering peers mastering it as yet another software paradigm to evolve with.

The actual problem here is that the "moat" doesn't seem evenly distributed among the developer population. For example, many developers are working in legacy SaaS application type product environments with hundreds of feature flags, API's, Database solutions, and "custom built" (often convoluted) that only makes sense for that product because it's a messy byproduct of it's inception, its evolution.

I could've used less words by just saying "tech debt" but it's way more nuanced than that. Point here is - the opportunity cost of using / learning the AI dev stack vs. not - is not equal. So in response to tweets like these, the perspective of value added by Coding LLM mastery is fragmented between solo devs vibe-coding entire products from scratch, and senior developers who are valuable to their organization by virtue of holding the entire system architecture in their head (and unable to reliably outsource anything to AI for the foreseeable future).

Capacity Overhang keeps me up at night, for all of the reasons mentioned above, even if I'm relatively quite advantaged by having access to the new stack.