A friend is six months into supporting a sixty person engineering group. Perhaps unsurprisingly, most of their teams believe they have urgent hiring needs.
To spread hiring equally across the teams in need, or to focus hiring on just one or two teams until their needs were fully staffed? That was the question.
It’s a great question, and captures a deeply challenging aspect of leading an organization. It’s fun to do initial discovery, learning from and about everyone. The rare moment when you choose to reorganize the team is painful but concludes quickly.
What’s much harder is keeping the faith when you’ve played your cards and need to find space for your plans to come into fruition. Staying the course is particularly fraught when it comes to growing an organization, because some teams always need more than you choose to provide.
When you talk about growing an organization, the conversation usually leads to hiring. While I believe hiring is
a very important approach to growing organizations, I believe we reach for it too often.
In order to prioritize hiring for scenarios where it’ll do the most good,
over the past year I’ve developed a loose framework for reasoning about
what a given team needs to increase performance.
Four states of a team
The framework starts with vocabulary for describing teams,
their performance within their surrounding context.
Teams are slotted into a continuum of four states:
A team is falling behind if each week their backlog is longer than the week before. Typically folks are working extremely hard but not making much progress, morale is low, and your users are vocally dissatisfied.
A team is treading water if they’re able to get their critical work done, but are not able to start paying down technical debt or start major new projects. Morale is a bit higher, but folks are still working hard and your users may seem happier because they’ve learned that asking for help won’t go anywhere.
A team is repaying debt when they’re able to start paying down technical debt, and are beginning to benefit from the debt repayment snowball: each piece of debt you repay leads to more time to repay more debt.
A team is innovating when their technical debt is sustainably low, morale is high, and the majority of work is satisfying new user needs.
Teams want to climb from falling behind to innovation, while entropy drags you backwards. Each state transition requires a different tact.
System fixes & tactical support
In this framework, teams transition state exclusively by adopting the appropriate system solution for their current state. As a manager, your obligation is to identify the correct system solution for a given transition, initiate that solution, and then support the team as best you can to create space for the solutions to work their magic. If you skip to supporting the team tactically before initiating the correct system solution, you’ll exhaust yourself with no promise of salvation.
For each state, here is the strategic solution that I’ve found most effective, along with some ideas around how to support the team while they come to fruition:
When falling behind, the system fix is to hire more people until the team moves into treading water. Provide tactical support by setting expectations with users, beating the drum around the easy wins you can find, and injecting optimism.
As a caveat, the system fix is to hire net-new people, increasing the overall capacity of the company. Sometimes folks instead attempt to capture more resources from existing company, and I’m pretty negative on that. People are not fungible, and generally folks end up in useful places, so I’m skeptical of reassigning existing folks to drive optimality. By nature, it’s also impossible for this kind of discussion to not become political, even when everyone involved has deep trust and respect for each other.
When treading water, the system fix is to add process to consolidate the team’s efforts to finish more things and reduce concurrent work until they’re able to begin repaying debt (e.g. limit work in progress). Tactically, the focus here is helping folks transition from a personal view of productivity to a team view,
When repaying debt, the system fix is to add time. Everything is already working, you just need to find space for the compounding value of paying down technical debt to grow. Tactically try to find ways to support your users while also repaying debt, to avoid disappearing into technical debt repayment from your users perspective. Especially for a team that started out falling behind and has reached repaying debt, your stakeholders are probably antsy waiting for the team to start delivering new stuff, and your obligation is to prevent that impatience from causing a backslide!
Innovating is a bit different, because you’ve nominally reached the end of the continuum, but there is still a system fix! In this case, it’s to maintain enough slack in your team’s schedule that the team can build quality into their work, and operating continuously in innovation, and avoid backtracking. Tactically, ensure that folks value the work your team is doing, the quickest path out of innovation is to be viewed as a team that builds science projects, which inevitably leads to the team being defunded.
I can’t stress enough that these fixes are slow. This is because systems accumulate months or years of state, and you have to drain that all away. Conversely, the same properties that make them slow to fix make them extremely durable once in effect!
The hard part is maintaining faith in your plan. Both your faith, and the broader organization’s faith as well. At some point you may want to launder accountability through a reorg, or maybe skip out to a new job, but if you do that, you’re also skipping the part where you get to learn. Stay the path.
Consolidate your efforts
As an organizational leader, you’ll be dealing with a number of teams, each of which is in a different place on this continuum. You’ll also have limited resources to apply, and they’ll usually be insufficient to simultaneously move every team down the continuum. Many folks try to move all teams at the same time, peanut buttering their limited resources, but resist that indecision-framed-as-fairness: no one getting anything is not a fair outcome.
For each constraint, prioritize one team at a time. If most teams are falling behind, then hire onto one team until it’s staffed enough to tread water, and only then move to the next. While this is true for all constraints, it’s particularly important for hiring.
Adding new folks to a team disrupts that team’s gelling process, so I’ve found it much easier to have rapid growth periods for any given team followed by consolidation/gelling periods where the team gels. The organization will never stop growing, but each team will.
This approach to nurturing great organizations is the opposite of a quick fix. While slow, I’ve found it consistently leads to enduring, real improvement in the happiness and throughput of an organization. Most importantly, these improvements stick around long enough to compound, creating a durable excellence.