Building a high-performing engineering team

Srivatsan Sridharan
Srivatsan Sridharan
5 min readApr 25, 2020
Image courtesy: dm.af.mil

What comes to your mind when you think of a high-performing team? Perhaps a sports team that continues to win season after season, year after year? Perhaps a project team that achieves the impossible and sends a human to the moon? Perhaps your community volunteer group that continuously raises people from poverty into comfortable living situations? High-performing teams amplify the impact of each individual, making the overall impact larger than the sum of its parts.

I personally find working in high-performing teams exhilarating and love building them as part of my professional career as an engineering manager. What I’ve learned from experience is that while there is no single formula to make a team high-performing, there are structural elements that can be leveraged to get your team to the state of optimal performance.

That to me, boils down to 3 things:

  1. Team Composition
  2. Team Processes
  3. Team Culture

Let’s talk about each of these 3 things in detail:

Team Composition

Unlike sports where you have a hard-limit on the size of the team, an engineering team can be arbitrarily large or small (of course, based on how much budget you have to staff people :-)). Identifying the right team size, therefore, can be as creative an endeavor as the work the team does. In my experience, a team of roughly 7–8 engineers turns out to be a good size.

If you go larger, you lose track of what’s happening on your team. That’s when you start dropping the ball. Fun fact: I once asked an engineer on my team how their weekend hike was. Their reply — “Sri, I didn’t go on a hike. Sarah (name changed) went on a hike.” Awkward…If you go smaller, you run into practical issues around coverage. In a 4 person team, if you have one person going on PTO and another having to take unexpected sick time, you’re now left with half of your team. Yikes!

Having diversity of thought on your team is a great thing. If everyone thinks the same way, you’ll be limited to one way of solving a problem. And that may not be the best way to solve that problem. The more diverse perspectives you have on your team, the more creative your team will be. And the more creative your team is, higher is the likelihood of your team performing really well.

Heterogeneity of skills is also a great thing. In an infrastructure team, a backend developer could bring the perspective of how users interact with infrastructure. Someone who has worked in a larger corporation could offer perspectives on how organizational growth can impact the infrastructure you’re building today. An engineer who loves to write as a hobby can offer valuable perspectives on writing good documentation. (For the folks who’ve reported to me, you know who you are ;) ).

Team Processes

Don’t retrofit processes on to a team. Let your team discover them. I once tried to push down traditional scrum based agile on to a team I was managing. While scrum is cool, it failed to have a positive impact. In fact, it slowed the team down. That process wasn’t the right thing for the team at that time.

My personal philosophy here is — let the right set of processes emerge. Now don’t get me wrong. I don’t mean that your team should operate like the wild west, but there is value in starting with something minimal and retrospecting frequently to see what’s working and what’s not. Double down on the things that are working, while weeding out the things that aren’t.

Don’t be the pointy-haired boss. (Courtesy: dilbert.com)

Over time, the process that did not work once, could actually end up being the perfect fit for your team. Remember, there is no such thing as a universal right process — a process is right only if it works for your team at that point in time.

Team Culture

Culture is a fairly overloaded term. When I say culture, I don’t mean free lunches, happy hours, and boardgame nights (although those could be fun for certain members of your team). What I mean by culture is — the values your team lives by every single day. The right set of values can turbocharge your team’s productivity.

Psychological safety, I believe, is one of them. If your team feels comfortable sharing their honest opinions — about the team, about the work, about you, then you’ve already solved half your problems. Cultivating psychological safety takes time though. If you think of members on your team as nodes in a graph, then you’d need to create a fully connected graph of trust, where each edge represents a strong trustworthy relationship.

If you have foundational trust and psychological safety, building a culture of peer feedback can go a long way. Imagine if your team could give each other feedback and learn from each other, all the time! Wouldn’t that be amazing! Make peer feedback your priority. Make it your team’s priority. Coach everyone on effective ways to provide peer feedback. You’ll start to see wonders.

Invest in learning. High performing teams are continuously learning teams — they keep themselves up to date on the tech, on the business, on their skills, and the effectiveness of their team. Teach & learn sessions, conferences, and retrospectives can go a long way in ensuring that your team is constantly improving.

Courtesy: Pixabay

This is by no means an exhaustive list nor is it a formula for success. But I hope I’ve offered insights that might help you in your management journey. I’m also curious to learn more about how you think about building high performing teams. Please leave your comments — would love to learn from them!

--

--

Srivatsan Sridharan
Srivatsan Sridharan

Engineering Manager. Part-time novelist. I write about travel, food, engineering, books, movies, and life.