Scaling an Engineering Team from 5 to 30 Without Losing the Plot
The systems, hiring principles, and cultural habits that keep an engineering organization fast as it grows, from a CTO who has lived through the transitions.

Every team size has a breaking point. What works at 5 engineers quietly stops working at 12, and what works at 12 collapses at 25. Scaling a team is really a sequence of controlled re-organizations, and the leaders who struggle are usually the ones who noticed too late.
I've scaled Rafeeq's engineering from 8 to 45+ people over three years. Every transition felt different, but the pattern was always the same: something that used to be implicit becomes a bottleneck, and you either build a system to handle it or watch the team slow down.
5–10 engineers: protect the founding energy
At this stage, process is mostly overhead. Your job is to:
- Hire only senior generalists. One wrong hire is 15% of your team. At this size, every engineer needs to own entire features end-to-end. Specialists are a luxury you can't afford yet.
- Keep everyone shipping. The CTO should still be reviewing code, maybe writing some. You lose credibility fast if you disconnect from the codebase while asking others to move fast.
- Write things down anyway. Not process; decisions. A simple decision log saves you from re-litigating architecture choices for years. We use a simple markdown file in the repo: date, decision, context, who was involved.
- Establish your hiring bar early. Even if you're only hiring one person every two months, write down what "great" looks like. This document becomes invaluable when hiring accelerates.
The danger here isn't chaos, it's hero culture: one or two people who hold everything in their heads. It feels efficient. It's your first scaling bomb. When those people take a vacation or leave, the team discovers how much undocumented knowledge walked out the door.
How I'd detect it's time to move to the next phase: When you notice Slack threads replacing architecture discussions, when new joiners take more than 2 weeks to ship their first meaningful PR, or when you're the bottleneck on every design decision.
10–20 engineers: the first real structure
This is the hardest transition. Informal communication stops scaling: the "everyone knows everything" assumption breaks, silently. People start duplicating work, stepping on each other's changes, and waiting for context that lives in someone else's head.
- Form teams around missions, not technologies. "Checkout team," not "backend team." Technology-based teams create ticket-ping-pong between them. At Rafeeq, our first split was Order Lifecycle, Driver Experience, and Platform. Each team owned their full stack.
- Appoint tech leads before you think you need to. Growing leads from within beats hiring managers externally at this stage; they carry the context and the trust. I identify potential tech leads by watching who naturally unblocks others, not just who writes the most code.
- Introduce exactly enough process: sprint-level planning, a written RFC for anything that crosses team boundaries, blameless postmortems. Resist everything else.
- Define ownership explicitly. Use a simple spreadsheet or CODEOWNERS file. When nobody owns something, nobody maintains it. When two teams own it, they'll conflict.
- Start weekly engineering all-hands. 30 minutes, max. Demo something, share learnings, align on the week. This is cheap insurance against teams diverging silently.
At this stage I also introduce the "two-pizza on-call" rule: each team owns their on-call rotation. Nothing makes a team care about reliability like being woken up by their own code.
20–30 engineers: managers, platforms, and the CTO's identity crisis
This phase requires the most personal growth from the leader. The things that made you effective as a hands-on technical leader actively hinder you now.
- Hire or grow real engineering managers. Tech leads doing 50% management stop scaling around 8 reports. Good management is a full-time skill, and pretending otherwise burns out your best technical people.
- Start a platform mindset. Not necessarily a platform team, but shared ownership of CI/CD, infrastructure standards, and developer experience. Every team solving deployment independently is waste multiplied. At Rafeeq, we formed a Platform team at engineer #22. Their first wins were Kubernetes cost optimization and standardized observability.
- Redefine your own job. The hardest part. Your value shifts from making technical decisions to designing the system that makes them: hiring bar, architecture review, incident culture, promotion criteria.
- Build a career ladder. Engineers need to see a path. Without one, your best people leave for companies that have one. We defined IC1-IC5 and M1-M3 tracks with clear expectations at each level.
- Invest in onboarding. At 5 people, a new hire absorbs context through osmosis. At 25, they drown without structured onboarding. Our 30-60-90 day plan reduced time-to-productivity from 6 weeks to 3. Tools like Kiro as a DevOps assistant can accelerate this further by giving new hires an always-available context companion.
The identity crisis
Somewhere around engineer #20, you'll have a day where you write zero code, make zero architectural decisions, and spend 8 hours in 1:1s, hiring meetings, and planning sessions. You'll wonder if you're still a CTO or just an expensive project manager.
The answer: you're building the machine that builds the product. That's harder than building the product itself, and it's where you create the most leverage. Accept it, and hire a Staff Engineer or VP of Engineering who keeps the technical standards high while you focus on people and systems.
30+ engineers: what changes again
Beyond 30, new patterns emerge:
- Directors and skip-level 1:1s. You can't maintain direct relationships with every engineer. Your managers' managers become your eyes and ears.
- Architecture governance. RFCs alone don't scale. You need an architecture group (rotating, not permanent) that reviews cross-team decisions.
- Engineering brand. At this size, you're competing for talent. Your blog posts, conference talks, and open-source contributions become recruiting tools.
The three habits that survive every stage
- Blameless postmortems, ruthlessly consistent. Culture is what happens after an outage. We've never skipped a postmortem, even for minor incidents. The practice itself is the point — it normalizes learning from failure.
- A visible hiring bar. Write down what "great" looks like and score against it. Gut-feel hiring degrades exactly when volume increases. Our interview scorecards have saved us from at least a dozen bad hires.
- Weekly one-on-ones that aren't status meetings. Retention problems are visible three months early in one-on-ones, if you're listening. Ask "what's frustrating you?" more than "what did you ship?"
The metric I watch
One number tells me if scaling is going well: time from PR opened to deployed in production. If this number starts climbing, something structural is wrong — review bottlenecks, testing gaps, deployment friction, or unclear ownership. Everything else is a lagging indicator.
Team scaling is not an HR problem. It is an architecture problem where the components are people, and the interfaces are trust.
Recommended reading

The Legacy of Leadership: What Remains When You Leave
The thing people remember is not your architecture. It is not your processes. It is how you made them feel. Reflections on what actually endures from engineering leadership.

What 3 A.M. Incidents Taught Me That AWS Certifications Never Did
Twenty production incidents reviewed: why understanding beats fixing, what certifications actually train, and the habits that keep a team calm at 3 a.m.

An Engineering Leader's Sustainable Weekly Rhythm
A realistic weekly rhythm that balances strategy, people, and operational work — without burning out or losing yourself in back-to-back meetings.

Comments
No comments yet. Be the first to share your thoughts.