Team Topologies
Team Topologies is a framework for designing and evolving team structures to enhance software delivery and organizational effectiveness. Developed by Matthew Skelton and Manuel Pais in Team Topologies: Organizing Business and Technology Teams for Fast Flow, it provides a model for structuring teams to improve collaboration, reduce cognitive load, and enable faster software delivery.
Key Concepts of Team Topologies
1. Four Fundamental Team Types
The framework defines four types of teams, each with a distinct purpose:
- Stream-aligned teams – Aligned to a business domain or value stream, delivering end-to-end value (e.g., a payments team in an e-commerce company).
- Enabling teams – Help other teams acquire new skills, tools, and capabilities (e.g., an SRE team teaching reliability practices).
- Complicated subsystem teams – Handle specialized, complex domains requiring deep expertise (e.g., teams managing AI algorithms or cryptography).
- Platform teams – Provide reusable services, tools, and platforms to support stream-aligned teams (e.g., internal developer platforms).
2. Three Core Interaction Modes
How teams interact is crucial to minimizing friction and maximizing efficiency:
- Collaboration – Teams work together for a defined period to discover solutions.
- Facilitating – Enabling teams guide and mentor other teams without direct involvement.
- X-as-a-Service – One team provides services or capabilities that other teams consume independently.
3. Cognitive Load Considerations
- Teams should be designed to manage a reasonable amount of cognitive load.
- Avoid overloading teams with too many responsibilities or complex systems.
- Stream-aligned teams should be empowered but not burdened with unrelated concerns (e.g., infrastructure, security, etc.).
4. Evolutionary Team Structures
- Teams should adapt as the organization scales and requirements evolve.
- Early-stage companies may need more collaboration, whereas mature organizations benefit from well-defined service boundaries.
Benefits of Team Topologies
- Faster delivery by reducing dependencies and bottlenecks.
- Improved developer experience and autonomy.
- Better knowledge-sharing and upskilling through enabling teams.
- Scalable team structures that evolve with business needs.
See also
- The "Two-Pizza Rule" (Amazon)