Moving to three-person engineering teams

This post lists the key insights from this article, from Phil Sarin, CTO of ManagedbyQ.

Why you should go back to smaller-sized teams when the org grows

Small size = very fast development. The team is able to have total mental model of the code they’re working on. Nobody is able to be left out or lag behind in understanding.

Smaller teams make it easier to plan and sequence work. This has enabled us to move quickly on a number of projects.

There’s much more ownership, opportunities to lead, and flexibility.

It’s easier to feel proud of the work we are doing since there is more accountability and each person has a more direct impact on the successes of the team.

Still some adaptation to do to make it work

Need to learn to trust more easily. You need engineers who handle ambiguity well and who focus on solving problems rather than simply churning through tasks.

Need to train the leads. You could ask your new leads to assess themselves along several dimensions including setting goals, recognizing problems, managing projects, managing risk, giving feedback, and creating psychological safety.

Need to change the role of management: each manager now has multiple three-person teams reporting to them and has a larger number of direct reports. Managers might be no longer responsible for directly managing projects.

But there can be some dangers to pay attention to

Technical ownership might be less stable. You’d love to say that every three-person team fully owns small systems that are fully decoupled from those of other teams, there will be plenty of shared systems. Though sharing systems may create a diminished sense of ownership, the narrower and deeper mandates of the three-person teams hugely increased the sense of ownership that the author’s engineers felt.

Engineers were less connected to each other’s work. The author’s engineers started to report that they wanted to know more about what their colleagues were working on.

More work for product managers and designers. Each team might also hav an associated product manager and a designer, who might have to juggle more teams. The product management team might need to be well-staffed to be able to handle the larger number of teams.