How much authority should a stream-aligned team have? What makes these teams so efficient?
When you think of “stream,” think of “flow.” That’s a key aspect of stream-aligned teams. It’s the primary of four team topologies discussed by software engineers and authors Matthew Skelton and Manuel Pais.
Continue reading for an overview of what stream-aligned teams are designed to do.
The primary team type is the stream-aligned team. A stream-aligned team handles every aspect of a single product produced by your organization. This product could be anything: a specific microservice, a mobile application, or something more nebulous, such as innovating ideas for new software. According to Skelton and Pais, each stream-aligned team should have the authority to take full ownership of its projects from development to delivery and beyond.
(Shortform note: Skelton and Pais’s term, “stream-aligned team,” references the concept of flow, which is the idea that a piece of software should move through the development process to the consumer with as few interruptions as possible, like a flowing river. In software development, maximizing flow means minimizing the number of handoffs between teams a piece of software goes through in this process. Skelton and Pais’s stream-aligned teams attempt to solve this problem by making a single team responsible for a single piece of software at every stage in its development.)
Because your stream-aligned teams handle both development and delivery, they’re able to receive feedback on their products and use it to improve the quality of their fixes and updates. This allows them to seamlessly address problems as they occur rather than sending them off to another team and waiting for a response.
(Shortform note: To make sure that your teams are able to respond to new feedback seamlessly, experts recommend including operations specialists on your development teams. By including team members with experience running live services, you’ll improve each team’s ability to keep their software running smoothly.)
Due to the demands of handling so many different tasks, you should make sure each of your stream-aligned teams includes individuals who have different skills. This enables your teams to react to a wide variety of problems without needing to seek help from other teams. As Skelton and Pais note, diverse teams can come up with creative solutions more quickly than relatively homogenous teams.
(Shortform note: In addition to bringing varied skill sets and creative solutions, diverse teams may also have an increased ability to focus on facts and accurately assess information. By bringing multiple perspectives together on one team, you’ll create teams that are more likely to spot both problems and solutions that other teams might miss.)
Because they produce and deliver all of your organization’s products and services, Skelton and Pais consider stream-aligned teams to be the most important type of team. These teams are so important that the purpose of the other three types of teams is to support them.
(Shortform note: Since stream-aligned teams are so important, it can be helpful to ensure they’re supported from within, not just by other teams. To ensure that your stream-aligned teams have all the internal support they need, consider including management professionals on each stream-aligned team in addition to developers. Team members with management skills can help motivate your stream-aligned teams and delegate tasks to different team members for increased efficiency.)
———End of Preview———
Like what you just read? Read the rest of the world's best book summary and analysis of Matthew Skelton and Manuel Pais's "Team Topologies" at Shortform.
Here's what you'll find in our full Team Topologies summary:
- How to set up your software development teams to work as efficiently as possible
- The four types of teams you should create as a project manager
- The three main ways your teams should interact with each other