Skip to main content
Test Double company logo
Services
Pragmatic Services Overview
Holistic software investment consulting
Acccelerate Software Delivery
Balance efficiency and quality
Improve Product Impact
Drive results that matter
Upgrade Rails Seamlessly
Update Ruby and Rails versions
Scale DevOps
Dev experience and infrastructure
Technical Recruitment
Build tech & product teams
Case Studies
Solutions
Legacy Modernization
Renovate legacy software systems
Pragmatic AI
Solve business problems without hype
Technical & Product Assessments
Uncover root causes & improvements
About
About
What's a test double?
Approach
Meeting you where you are
Founder's Story
The origin of our mission
Culture
Culture & Careers
Double Agents decoded
Great Causes
Great code for great causes
EDI
Equity, diversity & inclusion
Insights
All Insights
Hot takes and tips for all things software
Leadership
Bold opinions and insights for tech leaders
Developer
Essential coding tutorials and tools
Product Manager
Practical advice for real-world challenges
Say Hello
Test Double logo
Menu
Services
BackGrid of dots icon
Services Overview
Holistic software investment consulting
Software Delivery
Accelerate quality software development
Product Impact
Drive results that matter
Cycle icon
DevOps
Scale infrastructure smoothly
Upgrade Rails
Update Rails versions seamlessly
Technical Recruitment
Build tech & product teams
Case Studies
Solutions
Solutions
Legacy Modernization
Renovate legacy software systems
Pragmatic AI
Solve business problems without hype
Technical & Product Assessments
Uncover root causes & improvements
About
About
About
What's a test double?
Approach
Meeting you where you are
Founder's Story
The origin of our mission
Culture
Culture
Culture & Careers
Double Agents decoded
Great Causes
Great code for great causes
EDI
Equity, diversity & inclusion
Insights
Insights
All Insights
Hot takes and tips for all things software
Leadership
Bold opinions and insights for tech leaders
Developer
Essential coding tutorials and tools
Product Manager
Practical advice for real-world challenges
Say hello
Leadership
Leadership
Leadership
Communication & teams

Distributed process ownership eliminates team bottlenecks

Process ownership concentrated in a few hands creates invisible organizational drag. When distributed across the team, it eliminates bottlenecks, improves delivery, and frees leaders to do higher-value work.
Sukhraj Singh
|
July 29, 2026
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.

On most software teams, the work of running things falls to a few people. The engineering manager and product manager run standups and retros and a handful of engineers write most of the tickets. They're the ones who hold the context and drive the team forward. The rest of the team, often the majority, picks up tickets and executes them.

I was working as a software consultant on a team that had hit this wall and over time, but became one of the people advocating for change. Things were fine at the top level but there were friction points underneath that were affecting the team.

The symptoms

Engineers didn't have enough context on the projects they were working on. Tickets were often just titles, with no description or acceptance criteria to estimate against. That lack of context led to tickets taking longer to finish because engineers had to stop mid-implementation to chase down missing information.

Code reviews were also suffering. Without a shared understanding established early, business decisions were landing in pull request comments. Debates about scope and product direction happened at the code review stage, where they don't belong. Reviews dragged on, making PRs sit open longer and slowing shipping.

Sprint planning suffered too because people estimated without enough context, so estimates landed far from the actual time the work took. And the weight of keeping all of that organized fell to a small group of people who had accumulated enough context to be relied on.

The rest of the team hadn't been given a structure, or a reason, to get involved in how the work got shaped before it reached them.

Let the team diagnose the problem

The team ran three workshops across multiple sessions: a retrospective, a team charter session and a team process workshop. The sessions surfaced pain points and worked toward solutions that the team itself could own.

When a team participates in designing how they work, the changes are more likely to stick, because the people following the process are the same people who built it. The workshops were just the mechanism for getting there; the underlying idea was to give the team the space to name what wasn't working and decide how to fix it.

What the team actually changed

Product Requirements Documents (PRDs) as group kickoffs. Before medium and large projects began, the team reviewed the PRD together rather than leaving engineers to absorb context alone. This gave everyone visibility into the business goals and open questions before tickets were written. Implementation concerns surfaced earlier and engineers entered refinement with enough background to flag risks they'd otherwise have missed.

The project anchor role. Each project was assigned an engineer as its project anchor whose responsibilities were to prepare the Technical Design Document, ensure tickets were well-defined before estimation and serve as the technical point of contact throughout. This meant that the context about a project lived more closely with the person closest to implementation.

Technical Design Documents (TDDs) as shared decisions. The anchor prepared the TDD, but technical direction wasn't finalized until the team discussed it. One person did the research and drafted the design efficiently but did not lock the technical decisions. Engineers who would implement the work had a say in the tradeoffs before the design locked. That shared understanding made estimation grounded and reduced mid-sprint surprises.

Ticket completeness as a team standard. Incomplete tickets became ineligible for refinement. The idea was not to have lengthy documentation in tickets but just enough context and acceptance criteria for any engineer to pick it up confidently. The anchor got tickets to that state before refinement; the team then estimated together from a shared foundation.

Distributed team rituals. Running standups, retros and other ceremonies did not fall solely on the shoulders of EM or PM. Such responsibilities rotated across all team members. Ownership of how the team functioned became a shared expectation. People were no longer just participants in someone else's process.

Where the team landed two months in

Within two months, the team started noticing shifts across delivery and team health.

Estimation improved noticeably. With tickets refined and ready before sprint planning, engineers estimated as a group with confidence rather than hedging individually. Refinement stopped turning into discovery sessions. Everyone was working from the same context, which meant fewer surprises mid-sprint and more honest commitments upfront. Sprint commitments started closely matching actual delivery and occasionally the team finished more than they'd committed to.

Code reviews moved faster. With business context established earlier during PRD and TDD kickoffs, PR reviews stayed focused on the code itself. The back-and-forth over scope and product decisions in review comments largely disappeared and PRs shipped more quickly as a result.

Self-service became possible. Engineers could pick work directly from the backlog without tracking someone down for context first. Because the project anchor had done the preparation work, the information was in the ticket, not locked in someone's head. Onboarding onto a new piece of work became significantly less friction-heavy.

Overall team velocity increased. That was never the goal behind distributing responsibilities, though. Engineers spent less time asking whys and whats on tickets, and no longer had to chase people for context, which freed up time for the actual implementation.

The engineering manager and product manager had less to carry. When the people responsible for team health are buried in administrative work, their capacity to do the harder, higher-value parts of their jobs shrinks. Redistributing process ownership gave them that capacity back.

Why ownership distribution works

When context is spread across the team, less of it gets lost between people and delivery improves as a result.

Teams that centralize process ownership often do it for understandable reasons. It's faster and more consistent, and it doesn't require buy-in from people who have other things to focus on. But that efficiency comes at a cost: the team becomes dependent on a small number of people to hold everything together. And those people eventually become bottlenecks or burn out.

Spreading ownership took the team's dependence on a few key people and turned it into something the whole group carried. Friction drops when people understand the why behind a decision and context doesn't depend on any single person.

The gains were better estimations and faster code reviews with fewer surprises mid-sprint. Engineers could own their own work without constantly asking for context. Managers also had capacity to do the work that actually required management.

All of this was the result of a system that was built to distribute responsibilities and motivate people to care more about how work flows.

Sukhraj Singh is a Senior Software Consultant at Test Double, and has experience in Ruby on Rails, from modernizing legacy systems to building greenfield applications while learning alongside the peers he works with.

More where that came from

Get Test Double's sharpest thinking on software, teams, and leadership — straight to your inbox, no fluff.

Sign me up

Related Insights

🔗
5 rules to avoid the 95% AI project failure rate
🔗
AI amplifies everything (including what's broken). Start there.
🔗
Anyone can code: Software Is having its Ratatouille moment

Explore our insights

See all insights
Developers
Developers
Developers
Software engineering and AI: Finding the plot(again)

Is "clean code" still the point when an agent writes it? River Bailey unpacks quality, tech debt, and what it means to be a product engineer.

by
River Lynn Bailey
Developers
Developers
Developers
Why quality software is expensive (to build)

Quality software is expensive because the parts users notice least often require the most work: usability, reliability, security, compliance, testing, and long-term maintenance.

by
Shawn Rinehart
by
Michael Timko
Leadership
Leadership
Leadership
AI amplifies everything (including what's broken). Start there.

Is your organization clear enough to benefit from the speed AI delivers? AI doesn't create dysfunction—it amplifies whatever patterns already exist, including the broken ones.

by
Jen Tedrow
Letter art spelling out NEAT

Join the conversation

Technology is a means to an end: answers to very human questions. That’s why we created a community for developers and product managers.

Explore the community
Test Double Executive Leadership Team

Learn about our team

Like what we have to say about building great software and great teams?

Get to know us
Test Double company logo
Improving the way the world builds software.
What we do
Services OverviewSoftware DeliveryProduct StrategyLegacy ModernizationPragmatic AIDevOpsUpgrade RailsTechnical RecruitmentAssessments
Who WE ARE
About UsCulture & CareersGreat CausesEDIOur TeamContact UsNews & AwardsN.E.A.T.
Resources
Case StudiesAll InsightsLeadership InsightsDeveloper InsightsProduct InsightsPairing & Office Hours
NEWSLETTER
Sign up hear about our latest innovations.
Your email has been added!
Oops! Something went wrong while submitting the form.
Standard Ruby badge
614.349.4279hello@testdouble.com
Privacy PolicyTerms & Conditions
© 2020 Test Double. All Rights Reserved.

More where that came from

Get Test Double's sharpest thinking on software, teams, and leadership — straight to your inbox, no fluff.

Sign me up