Feb 26, 2026

Peter Busk

Scaling agile development: From 5 to 50 developers

Introduction

Agile works wonderfully with a small team. Five developers, one product owner, daily stand-ups, two-week sprints. Communication is easy, decisions are quick, deployments go smoothly.

But then the company grows. Suddenly you have 20 developers. Then 50. And the agile process that worked so well starts to crack. Stand-ups take 45 minutes. Teams step on each other's toes. Releases become chaotic.

At Hyperbolic, we have scaled development teams many times. Here is what works when you transition from a small agile team to a larger organization.

The three critical transitions

5-12 developers: A single team

This is the optimal point for agile. Everyone knows each other, communication is easy, decisions are made quickly.

Structure: One team, one backlog, one product owner.

Challenge: As the team approaches 10+, it becomes too large. Stand-ups become lengthy, context switching increases, specialization becomes necessary.

12-30 developers: Multiple teams, same product

Now you need to split into teams. But how? By functions? By layers (frontend/backend)? By components?

Structure: 2-4 teams, coordination required.

Challenge: Dependencies between teams create bottlenecks. Shared codebases create merge conflicts. Who owns what?

30-50+ developers: Multiple teams, multiple products

Large organization with different products or modules.

Structure: 5-8+ teams, potentially more product owners, program management layer.

Challenge: Coordination across teams, shared infrastructure, consistent standards, resource allocation.

Scaling framework

At Hyperbolic, we use elements from Scrum, SAFe, and LeSS, tailored to the client's specific context.

Team structure: Functional teams vs. component teams

Component teams (organized by technical layer):

  • Frontend team

  • Backend team

  • Database team

  • Infrastructure team

Problem: To deliver a feature, it must go through all teams. High coordination, slow delivery.

Functional teams (organized by business capability):

  • User management team

  • Payment processing team

  • Reporting team

  • Search team

Advantage: Each team can deliver features end-to-end with minimal dependencies.

Our recommendation: Functional teams where possible. Component teams only for shared infrastructure.

Implementation: When we helped a client with 35 developers reorganize from component to functional teams, the average time to complete features dropped from 6 weeks to 3 weeks.

Dependencies and coordination

Scrum of Scrums: Representatives from each team meet 2-3 times a week for coordination.

Agenda:

  • What has your team done since last time?

  • What are you planning to do?

  • Do you have any blockers?

  • Are you doing something that affects other teams?

Problem with Scrum of Scrums: It can become inefficient if there are too many teams. Information sharing is not the same as decision-making.

Alternative: Quarterly planning

All teams plan together for the next 3 months (not in detail, but overall).

Process:

  1. Product vision: What are the goals for the quarter?

  2. Team breakout: Each team plans their contribution

  3. Dependency mapping: Visualize who needs what from whom

  4. Risk identification: What can go wrong?

  5. Commitment: Teams commit to deliveries

Advantage: Coordination without managing daily sprints in detail.

Managing shared codebase

With 50 developers in the same codebase, merge conflicts are unavoidable.

Strategies:

Trunk-based development:

  • Everyone commits to main/trunk

  • Short-lived feature branches (max 1-2 days)

  • Continuous integration

  • Feature flags for unfinished features

Advantage: Reduces merge pain, encourages small commits, quick feedback.

Code ownership:

  • Each team "owns" specific modules

  • Other teams can make changes, but require review from the owner

  • Prevents anarchy, maintains quality

Implementation in Hyperbolic:

  • CODEOWNERS file in GitHub defines who reviews what

  • Automatic assignment of reviews

  • Code ownership visualized in documentation

Architectural boundaries:

  • Modularize the codebase with clear APIs between modules

  • Teams can work independently within their module

  • Changes that break APIs require coordination

Technical practices for scaling

Continuous integration/continuous deployment

With many teams, manual testing and deployment are unsustainable.

CI/CD pipeline:

  1. Commit: Developer pushes code

  2. Build: Automated building and compiling

  3. Unit tests: Run in seconds

  4. Integration tests: Run in minutes

  5. Deployment to staging: Automated

  6. Automated UI tests: Catch regressions

  7. Deployment to production: One-click or automated

Key metrics:

  • Build time: Should be under 10 minutes, ideally under 5 minutes

  • Deployment frequency: Daily minimum, ideally several times daily

  • Lead time: Commitment to production within 1 day

If build time becomes too slow with 50 developers:

  • Parallelize tests

  • Optimize slow tests

  • Split monolith (if applicable)

Automated testing strategy

Test pyramid:

  • 70% unit tests: Fast, isolate logic

  • 20% integration tests: Verify that components work together

  • 10% end-to-end tests: Critical user journeys

As scaling occurs, end-to-end tests become a bottleneck:

  • Slow (minutes to hours)

  • Brittle (fail for the wrong reasons)

  • Expensive to maintain

Solution:

  • Invest in a robust end-to-end framework (Playwright, Cypress)

  • Run end-to-end tests in parallel

  • Dedicated "test engineer" role

Code review process

With 5 developers, everyone can review everything. With 50, it's impractical.

Scaled review process:

  • Automated checks first: Linting, formatting, test coverage

  • CODEOWNERS auto-assignment: Right people marked automatically

  • Review SLA: Under 4 hours for urgent, under 24 hours for standard

  • Two-reviewer rule for critical code: Security, core infrastructure

Problem: Review backlog if not managed.

Metrics to track:

  • Average time to first review

  • Size of pull request (smaller is better)

  • Thoroughness of review

Communication patterns

Asynchronous over synchronous

With teams potentially in different time zones, synchronous meetings do not scale.

Asynchronous tools:

  • Slack/Teams: Quick questions, updates

  • Confluence/Notion: Documentation, decisions

  • GitHub/GitLab: Code reviews, issues

  • Loom: Video explanations

Synchronous meetings reserved for:

  • Complex problem-solving

  • Brainstorming

  • Coordination where nuances are critical

Documentation becomes crucial

With 5 developers, oral knowledge works. With 50, knowledge must be documented.

Essential documentation:

  • Architectural decision records: Why did we choose X over Y?

  • Onboarding guide: New developer should be able to be productive in under 1 week

  • API documentation: Auto-generated where possible

  • Operations manuals: How to implement, how to debug common issues

Platform and tools

Developer productivity technique

With 50 developers, even small inefficiencies are costly.

Invest in:

  • Fast builds: Caching, distributed builds

  • Good local development: Docker compose for easy environment setup

  • Internal tools: CLIs, scripts for common tasks

  • Templates: Project scaffolding, boilerplate generators

Example: By reducing build time from 15 minutes to 5 minutes for 50 developers (assuming 5 builds daily each):

  • Time saved: 50 developers × 5 builds × 10 minutes = 2500 minutes/day = 42 hours/day

  • At 1000 kroner per hour: 42,000 kroner/day = 1 million kroner/month

Internal platform team

As scaling occurs, it makes sense to have a dedicated team for developer experience.

Responsibilities:

  • Maintaining CI/CD pipeline

  • Build optimization

  • Tool development

  • Infrastructure-as-code

  • Developer onboarding

Team size: 2-3 people for 50 developers.

Organizational structure

Flat vs. hierarchical

5 developers: Flat, no hierarchy needed.

50 developers: Some structure becomes necessary, but how much?

Our recommendation for 50 developers:

  • Technical leads (1 per team): Technical direction, not people management

  • Development managers (1 per 8-12 people): Career development, performance

  • Product managers (1 per 1-2 teams): What should be built

  • Architect(s): Technical consistency across teams

Avoid: Heavy hierarchy with VPs → directors → managers → leads. Keep it streamlined.

Career development

With a small team, career development is limited. When scaling, create paths:

Individual contributor track: Junior → Mid → Senior → Staff → Principal engineer

Management track: Technical lead → Development manager → Director

Both tracks should have similar prestige and compensation. Do not force good engineers into management.

Onboarding when scaling

5 developers: An existing developer can onboard a new person.

50 developers: Need for structured onboarding.

30-60-90 plan:

First 30 days:

  • Completed setup (laptop, accounts, tools)

  • Send first small pull request

  • Understand codebase structure

  • Meet team and key stakeholders

First 60 days:

  • Own a small feature end-to-end

  • Participate in on-call duty

  • Contribute to team rituals

First 90 days:

  • Fully productive team member

  • No longer needs help at hand

Support structure:

  • Buddy system: Experienced developer assigned as a point of contact

  • Onboarding checklist: Clear milestones

  • Regular follow-ups: Weekly in the first month

Maintaining culture

This is often overlooked, but it's critical.

Small team: Culture happens organically.

Large team: Culture requires conscious cultivation.

Practices:

  • Staff meetings: Monthly, share wins and experiences

  • Engineering blog: Share knowledge internally and externally

  • Technical talks: Teams present their work

  • Guilds/practice communities: Cross-team groups around interests (frontend, security, testing)

  • Social events: Team building, hackathons

Common anti-patterns

Anti-pattern 1: Scaling too early

Do not implement SAFe when you have 12 developers. Overhead without benefit.

Rule: Simplest process that can work. Only add complexity when necessary.

Anti-pattern 2: Ignoring Conway's law

"Organizations design systems that reflect their communication structure."

If teams are split improperly, the architecture becomes fragmented.

Solution: Design team structure with architecture in mind.

Anti-pattern 3: Endless meetings

Agile rituals multiplied by teams can consume the entire day.

Stand-up + planning + retrospective + refinement × 4 teams = the whole week in meetings.

Solution:

  • Asynchronous updates where possible

  • Strictly time-bound meetings

  • Not everyone needs to be present for everything

Anti-pattern 4: Local optimization

Each team optimizes for itself, global efficiency suffers.

Example: Team A builds a custom solution instead of using Team B's component because "we can do it faster." Result: Duplication, inconsistency.

Solution: Architect role to ensure consistency across teams. Shared component library.

Metrics for scaled teams

Team health:

  • Developer satisfaction (quarterly surveys)

  • Employee turnover

  • Time to productivity for new hires

Delivery:

  • Deployment frequency

  • Lead time (commitment to production)

  • Change failure rate

  • Time to recovery from service

Code quality:

  • Test coverage trend

  • Bug escape rate

  • Technical debt (track and trend)

Example: 10x growth in 18 months

Company: SaaS startup, grew from 5 to 50 developers in 18 months after Series B funding.

Challenges:

  • Rapid hiring outpaced process development

  • Teams stepped on each other's toes

  • Quality declining

  • Deployment became risky monthly events

Intervention (We were called in month 14):

Month 1-3:

  • Assessed current state, identified bottlenecks

  • Reorganized from component teams to 6 functional teams

  • Implemented trunk-based development

  • Established Scrum of Scrums

Month 4-6:

  • Invested in CI/CD (build time down from 25 minutes to 8 minutes)

  • Established a code ownership model

  • Implemented quarterly planning

  • Created an internal platform team

Month 7-12:

  • Formalized architectural decision process (ADRs)

  • Comprehensive documentation effort

  • Established career ladder

  • Culture initiatives (guilds, technical talks)

Outcomes after 12 months:

  • Deployment frequency: Monthly → Daily

  • Lead time: 4 weeks → 5 days

  • Developer satisfaction: 5.2/10 → 7.8/10

  • Quality: Production incidents down 60%

Conclusion

Scaling agile development is possible, but requires intention and discipline.

Key principles:

  1. Right team structure: Functional teams over component teams

  2. Technical expertise: CI/CD, testing, code review

  3. Clear ownership: Who owns what

  4. Effective communication: Asynchronous first, synchronous as needed

  5. Intentional culture: Do not let it happen by accident

At Hyperbolic, we have helped many teams through this growth. We know what works.

Contact us for help in scaling your development.

By

Peter Busk

CEO & Partner