Rely on Specialists, but Sparingly

Last week, I talked about the concept of equality on an agile team. I mentioned that one meaning of equality could be all team members do the same work, so that everyone in agile becomes a generalist.

What I find surprising about this myth is that every sandwich shop in the world has figured out how to handle specialists, yet we, in the software industry, still struggle with the question.

Teamwork Outside Agile

My favorite sandwich shop is the Beach Hut Deli in Folsom, California. I’ve spent enough lunches there to notice that they have three types of employees: order takers, sandwich makers, and floaters.

The order takers work the counter, writing each sandwich order on a slip of paper that is passed back to the sandwich makers. Sandwich makers work behind the order takers and prepare each sandwich as it’s ordered.

Order takers and sandwich makers are the specialists of the deli world. Floaters are generalists—able to do both jobs, although perhaps not as well as the specialists. It’s not that their sandwiches taste worse, but maybe a floater is a little slower making them.

When I did my obligatory teenage stint at a fast food restaurant, I was a floater. I wasn’t as quick at wrapping burritos and making tacos as Mark, one of the cooks. And whenever the cash register needed a new roll of paper, I had to yell for my manager, Nikki, because I could never remember how to do it. But, unlike Mark and Nikki, I could do both jobs.

I suspect that just about every sandwich shop in the world has some specialists—people who only cook or who only work the counter. But these businesses have also learned the value of having generalists.

Having some generalists working during the lunch rush helps the sandwich shop balance the need to have some people writing orders and some people making the sandwiches.

Agile Teamwork

What this means for agile teamwork is that yes, Scrum teams should always attempt to have some generalists around. It is the generalists who enable specialists to specialize.

There will always be teams who need the hard-core device driver programmer, the C++ programmer well-versed in Windows internals, the artificial intelligence programmer, the performance test engineer, the bioinformaticist, the artist, and so on.

But, every time a specialist is added to a team, think of it as equivalent to adding a pure sandwich maker to your deli. Put too many specialists on your team, and you increase the likelihood that someone will spend perhaps too much time waiting for work to be handed off.

Note: A portion of this post is an excerpt from Mike Cohn’s book, Succeeding with Agile.

Guide

Agile Collaboration

Featured

Agile collaboration is the way a team works together to finish valuable work, learn quickly, and adapt as it goes. It is more than good communication.

Cover of A Leader’s Guide to Agile by Mike Cohn
Download

A Leader’s Guide to Agile

Featured

Learn the ten things agile teams need their leaders to understand, and how your actions can help them succeed. Get Mike Cohn’s free 91-page guide to the ten things agile teams most need their leaders to know.

rpowell
Article

What Is Cross-Functional Collaboration in Agile?

Featured

Clarify what cross-functional teams really need and what they do not.

A Scrum team standing together in front of a planning board.
Workshop

Working on a Scrum Team

Help the whole Scrum team build a shared approach to roles, planning, refinement, collaboration, and finishing valuable work together.

Article artwork for Agile Teams: Concurrent Engineering & Overlapping Work.
Article

Agile Teams: Concurrent Engineering & Overlapping Work

Help teams overlap work without losing alignment or quality.

Illustration of an agile team collaborating around interconnected gears.
Article

Agile Teamwork

Learn how agile teams share responsibility, reduce handoffs, and finish valuable work together.