Skip to Content
DocsOrganizationTeam Organization
DRAFT — This document is under development and not yet reviewed.

Team Organization

Teams are the fundamental unit of delivery. The way teams are organized determines how fast work flows, how knowledge is shared, and how dependencies behave across the system.

Research on high-performing teams consistently points to the same conditions: clear purpose, necessary competence within the team, autonomy over how work is done, and feedback on outcomes. These are not motivational principles — they are system properties. A team that lacks any of them will compensate through workarounds that create friction elsewhere in the organization.


Organizing Principles

Four principles shape how teams are structured at this level.

Autonomous, cross-functional teams. Each team owns its product or service across the full lifecycle — design, build, test, and operate. The team has the skills to deliver without relying on external gatekeepers for routine decisions. This reduces handoffs, accelerates feedback, and keeps accountability close to the work.

Supporting functions as enablers. Specialist support functions exist to make delivery teams better — not to control them. They provide tooling, coaching, and shared infrastructure. The distinction matters: a support function that gates or approves team decisions becomes a bottleneck, not an enabler.

Standardization where it creates shared leverage. Shared pipelines, security controls, and architectural principles give teams a common foundation. The goal is consistency at the level of the system — not uniformity at the level of the team. Guardrails, not gates.

Quality and security integrated early. Security, testing, observability, and operational concerns are part of design and development — not reviews that happen afterward. The cost of discovering a problem increases with distance from where it was introduced.


Team Types

Effective delivery systems use different team types for different purposes. The type determines a team’s primary focus and how it interacts with others. Conway’s Law — the empirical observation that organizations produce systems that mirror their communication structures — provides the underlying logic: team boundaries should follow product and service boundaries, not functional disciplines.

Product and Service Teams

A product or service team owns a well-bounded product or service that delivers value directly to customers or the business. It works end-to-end wherever possible and has the cross-functional competence — development, testing, security, operations, UX — to do so.

The team’s backlog is shaped by business and customer needs. Done means shipped, secure, tested, and operating to agreed standards.

Platform Teams

A platform team is a product-oriented team whose customers are other internal teams. It builds and maintains shared internal products — platforms, APIs, common components — that other teams depend on.

A platform team applies the same product thinking to internal services as product teams apply to customer-facing ones: clear interfaces, versioned releases, and explicit support commitments. Internal customers deserve the same quality of service as external ones.

Specialist Teams

Some technical domains are sufficiently complex that they warrant dedicated specialist expertise — highly regulated systems, domain-specific algorithms, or deep integration challenges that cannot be effectively handled within a general cross-functional team. These teams engage with other teams when that complexity arises; they do not own delivery on behalf of others.

Enabling Teams

Enabling teams build organizational capability. They coach and support other teams in developing skills and practices rather than delivering product themselves. Their contribution is measured by the improvement in the teams they work with — not by their own throughput.


Team Interaction Patterns

The relationship between team types shapes how dependencies flow through the system.

Product and service teams deliver value. Platform teams remove friction by giving product teams self-service access to shared infrastructure. Enabling teams build the competence that allows all teams to work better. Specialist teams handle complexity that falls outside the reach of standard cross-functional teams.

Dependencies flow by design — not by accident. The clearer the interfaces between team types, the fewer the interruptions and the better the flow across the system.