Switch to light mode

The Capacity Trap: Why Your Team Is Overcommitted and How to Fix It

- 7 min read

Founder making tough prioritization decisions about their engineering team's capacity

I was on a call with a manufacturing company founder last week. He was describing his product roadmap, and he kept saying “and then we’ll do this, and then we’ll tackle that.” I asked him how many engineers he had. Three. Full-time.

He paused. “Oh.”

That one-word realization - the gap between what he wanted to build and what his team could actually deliver - is the moment every founder hits the capacity trap.

The capacity trap is simple: you say yes to everything because it all seems important. Safety improvements. New integrations. Feature requests from your biggest client. That optimization that’ll save hours a week. All of it is true. It’s all real work. But when you commit your tiny team to ten different directions, you don’t get ten things at 10% completion. You get chaos at 0% completion.

And chaos costs more than the work itself. It costs momentum, team morale, and your credibility with investors or your board.

The Hidden Cost of Overcommitment

Here’s what actually happens when your team is overcommitted:

Context switching kills velocity. An engineer switching between three different projects doesn’t spend 33% of their time on each one. They spend 70% of their time context-switching, and 30% on actual work. You end up with three projects all moving in slow motion.

Nothing feels like a win. When everything is in progress and nothing ships, your team doesn’t feel like builders anymore. They feel like they’re drowning. Good engineers start looking for companies where they can actually finish things.

You optimize for the wrong metrics. You measure progress by the number of projects in flight or the amount of time spent, not by delivery. That’s accounting, not building.

Technical debt explodes. When a team is stretched thin, they skip the stuff that feels optional: tests, documentation, refactoring, architecture review. Six months later, that skipped work has compounded into a codebase that slows you down on every single future project.

I watched a company do this for eight months. Their roadmap had seven major projects. None of them shipped. By month nine, they’d finally cut it down to two focused initiatives. The first one shipped in four weeks. The second in five. The team went from exhausted to confident because they could actually see the finish line.

The Decision Framework That Actually Works

You need a framework for saying “no,” because saying “yes to everything” is the same as saying “no to your company’s ability to ship.”

Here’s what works:

1. Ruthlessly map your true capacity.

Write down your actual developer hours available per week. Account for meetings, code reviews, context switching, Slack, and all the stuff that isn’t feature work. It’s probably 60-70% of their calendar, not 100%. If you have three engineers at 70% effective capacity, that’s roughly 210 hours of actual feature/architecture work per week.

Now estimate every project on your roadmap in real hours. Not optimistic hours. Real hours from people who’ve done similar work.

Most founders are shocked at this step. They realize they have about 210 hours of work capacity and a roadmap requiring 800 hours. That’s when the real conversation starts.

2. Tier your projects by impact and business urgency.

Create three buckets:

  • Tier 1: Directly unblocks revenue or is required for a near-term milestone (client contract, funding round, product-market fit validation).
  • Tier 2: Important for long-term health but not urgent (technical debt, infrastructure, internal tooling).
  • Tier 3: Nice to have (optimizations, new features on the backlog, integrations that would be cool).

Tier 1 projects need to ship first. Everything else waits.

3. Commit to finishing over starting.

For the next six weeks, your rule is simple: the team ships one thing, not five things in progress. Once that’s done, they start the next project. This isn’t arbitrary. It’s flow-based delivery - the fundamental principle that one finished thing creates momentum and feedback, while five things in flight create stress and guessing.

4. Protect that capacity ruthlessly.

Every new request, every ad-hoc ask, every “just a quick thing” is a threat to your plan. It doesn’t mean you say no to everything. It means: “We’re committed to X this cycle. That request goes into the backlog for next cycle, or it needs to displace something else. What should it displace?”

Making that tradeoff visible is the key. When someone asks for a new integration and you say “sure, that means we defer the performance optimization or the client feature” - suddenly they understand the cost.

What This Looks Like in Practice

I was working with a SaaS company that had five projects in flight and nothing shipping. Their engineering team was demoralizing. We did this exercise:

Capacity: Two engineers, ~140 hours per week of real work.

Roadmap assessment:

  • Client integration they’d promised: 120 hours. (Tier 1)
  • Internal admin tool: 80 hours. (Tier 2)
  • Performance optimization: 60 hours. (Tier 2)
  • Three feature requests: 150 hours combined. (Tier 3)
  • Refactoring project: 100 hours. (Tier 2)

The CEO looked at that and realized they could only fit the client integration (done in 4 weeks) plus maybe one smaller Tier 2 project (maybe the admin tool, 6 weeks).

So that’s what they committed to. Nothing else. Everything else moved to a backlog that would be revisited in August.

Here’s what happened: The client integration shipped in 30 days. The team felt good. Revenue was there. Then they started the admin tool. It shipped in five weeks. Within two months, they had two wins under their belt instead of five things that were 40% done.

When they revisited the backlog in August, they had bandwidth because the team wasn’t exhausted, and because they’d learned things about their architecture from the completed projects that made the remaining work more efficient.

The Hard Part: Saying No to Your Own Ideas

The toughest version of this is when you - the founder - are the one with all the ideas.

You see the integration opportunity. You know the optimization that could cut hours off the process. You’ve got features you want to build.

Here’s the thing: having good ideas isn’t your job at this stage. Having a functioning engineering team that ships is your job.

When you’re small, every project your team ships is a bet they’re making on your ability to lead them toward something real. If you change direction every week, they stop believing in the direction and start protecting themselves by shipping less ambitious stuff.

Pick the Tier 1 projects. Commit to them visibly. And then don’t change your mind for six weeks.

The Conversation You Need to Have

If you’re a founder reading this and thinking “yeah, we’re definitely overcommitted,” the next step is a conversation with your technical leader (or with me, if you want that perspective).

That conversation is: “What would it take to focus? What’s the smallest set of projects that actually moves our company forward? And what do we kill or defer?”

It’s uncomfortable because you have to say “not now” to ideas you’re excited about. But it’s also liberating, because once you know what you’re actually committing to, you can stop feeling guilty about everything else.

Your team will feel it first. They’ll start finishing things. They’ll start shipping faster. And you’ll realize that one really good quarter of focused delivery beats three quarters of scattered progress every single time.

© 2024 Shawn Mayzes. All rights reserved.