Software Development Is a Team Sport, Part 1 of 6: Introduction (3min read)

How Heterogenous, Collaborative, and Strongly-Bonded Teams Produce Superior Results

Background

I love my co-workers very much. Our small-but-growing startup has many good things going for it, but I believe our people are our single greatest strength. Sometimes I wonder to myself, “Andrew, what is it that makes the people you work with so wonderful?” I look around in search of an answer and I see, without exception, a collection of talented, passionate, and kind individuals—and yet, I feel pretty clear that this is not the reason I find myself so smitten with them. After all, I’ve worked on teams of very talented people before, and found this particular vibe to be sorely lacking. After looking closer, I found a more substantial suspicion: our team has chemistry. I then found myself wondering, “Andrew, what does that mean?” Well, it became apparent to me that I didn’t really know... so I decided to find out.

Our team is growing, both in size and sophistication of projects. If we can identify the origins of our special chemistry now, we'll be in a better position to nourish our current culture and to fortify it as we welcome new members onto our team. My hope is that sharing my findings will empower you and others to do the same. After lots of reading and writing, I'm excited to share some of what I learned in my quest to understand what makes great teams tick.

Performance Is Not an Individual Matter

Workplace research on “high-performing individuals” suggests that most of them possess the following:

  • Technical skills in a specific discipline, such as market research, finance, or software programming
  • Problem-solving skills enabling individuals to analyze difficult situations or impasses and to craft solutions
  • Interpersonal skills, particularly the ability to collaborate effectively with others—a critical aspect of team-based work
  • Organizational skills, including networking, communicating well with other parts of the company, and navigating the political landscape, all of which help the team get things done and avoid conflicts with operating units and their personnel

I found this really fascinating: technical skills comprise a small portion of this list, and two of four items on the list don’t seem to be about individual performance at all!

This is not the common conception of performance, but if we compare product development to (say, a team sport) I think it starts to make sense. Avichal Garg (YCombinator) suggests the analogy of rowing, which requires a high degree of skill, power, and synchronization—none is particularly useful without the others—to illustrate how individual talent alone is insufficient to create a great software team. Parker Thompson (Pivotal Labs, AngelList) writes about how the notion of the “10x developer” has become romanticized, “Because managing [development] teams is incredibly hard. It’s much easier to think about hiring a few ‘10x’ [members] than it is to think about designing processes that create 10x teams.” The authors that outlined the four roles above suggest that the team approach, while challenging, is the better investment:

When forming project teams, people tend to focus too narrowly on technical skills and overlook interpersonal and organizational skills, which are just as important. For instance, a brilliant programmer may thwart team progress if she is unwilling to collaborate. By contrast, an organizationally savvy person with average technical skills may be the team’s most valuable member, thanks to his ability to gather resources and enlist help from operating units.

And a fantastic New York Times article from early 2016 shared findings from Google’s research on building teams; this statement asserts the thesis:

Who is on a team matters less than how the team members interact, structure their work, and view their contributions.

It seems that perhaps our conception of performance is wrong. Are we satisfied with that?

Five Themes Among Excellent Teams

If you’re not, you can identify and cultivate the dynamics on your team that fuel success. In this series of articles, I’d like to examine five themes:

  • Composition: The best teams are cohesive, but heterogenous, and value social/emotional intelligence.

  • Compassion: Safety and trust are prerequisite for the collaborative performance of a team.

  • Communication: Let information flow freely, and encourage members to share in equal proportion.

  • Coordination: Establish clear roles and expectations, then get out of the way.

  • Cultivation: Teams mature over time—invest strategically in healthy group development.

(Note: I labored over a thesaurus for minutes to find five suitable C-words, with hopes of helping these ideas stick to your brain. Trading off just-right words for fits-the-pattern words is a real labor of love for a vocabulary dork like me. You’re welcome.)

Interested to learn more? I was! If you are too, stay tuned for the first article on Composition. I’ve assumed the context of software development, which is what I know—but much of my information came from more general studies on agile methods, product development, and organizational dynamics (browse the Resources document and guess my favorite publication). Do you work in a different field? If so, let us know which themes apply to your work, too.