--- id: wiki-2026-0508-team-topologies title: Team Topologies category: 10_Wiki/Topics status: verified canonical_id: self aliases: [Team Topologies, Skelton Pais, stream-aligned team] duplicate_of: none source_trust_level: A confidence_score: 0.9 verification_status: applied tags: [team-design, devops, organization, conway-law] raw_sources: [] last_reinforced: 2026-05-10 github_commit: pending tech_stack: language: n-a framework: organizational --- # Team Topologies ## 매 한 줄 > **"매 4 fundamental team types + 3 interaction modes 의 fast flow 의 organize"**. Matthew Skelton & Manuel Pais (2019) 의 framework — Conway's Law 의 deliberately inverse-leverage. 2026 모던 SaaS scale-up 매 default playbook. ## 매 핵심 ### 매 4 Team Types - **Stream-Aligned**: 매 single value stream (product/feature/customer) 의 own. 매 most teams (~70%). - **Platform**: 매 internal services (CI/CD, observability, auth) 의 stream-aligned 의 enable. - **Enabling**: 매 short-term coaching (e.g. "help adopt OpenTelemetry"). 매 disband after. - **Complicated-Subsystem**: 매 deep specialist domain (video codec, ML inference, payments crypto). ### 매 3 Interaction Modes - **Collaboration**: 매 high-bandwidth, short-term, exploratory. - **X-as-a-Service**: 매 platform team의 well-defined API 의 provide. - **Facilitating**: 매 enabling team의 coach mode. ### 매 Cognitive Load - 매 team의 cognitive load 의 limit (Miller's 7±2). 매 boundaries 의 set. - 매 intrinsic / extraneous / germane load 의 distinguish. ### 매 응용 1. Scale-up 50→500 eng — stream-aligned squad 의 split. 2. Platform team 의 internal-developer-platform (IDP) build. 3. ML platform — 매 complicated-subsystem (training infra) + platform (serving). ## 💻 패턴 ### Team API (markdown contract) ```markdown # Team API: Payments Platform ## Mission Provide reliable payment processing API for stream-aligned teams. ## Services Provided (X-as-a-Service) - POST /charge (SLO 99.95%) - POST /refund (SLO 99.9%) ## On-call PagerDuty: payments-platform-oncall ## Interaction - X-as-a-Service for stream-aligned teams. - Collaboration window: Tuesdays 10-11am for new integrations. ``` ### Stream-aligned team boundary ```yaml # team-checkout.yaml team: checkout-squad type: stream-aligned owns: - service: checkout-api - service: cart-service - frontend: /checkout/* depends_on: - team: payments-platform (X-as-a-Service) - team: identity-platform (X-as-a-Service) oncall: checkout-oncall ``` ### Cognitive load assessment ```python # Quick survey, 1-5 scale per team load_survey = { "domain_complexity": 4, # how complex is the business? "tech_complexity": 3, # how many techs to master? "context_switches": 5, # how many systems do you touch? "external_deps": 2, # how many other teams must you coordinate with? } score = sum(load_survey.values()) # >15: overloaded, consider splitting or moving deps to platform ``` ### Enabling team engagement ```markdown # Engagement: Observability Adoption Enabling team: SRE-Coaching Target: checkout-squad Duration: 6 weeks Goal: Adopt OpenTelemetry tracing, define SLOs. Exit criteria: Team independently maintains SLO dashboard. ``` ## 매 결정 기준 | 상황 | Team type | |---|---| | 매 customer-facing product slice | Stream-aligned | | 매 shared infra (k8s, CI/CD) | Platform | | 매 short-term capability gap | Enabling | | 매 deep specialist (codec, ML kernel) | Complicated-Subsystem | | 매 ad-hoc cross-team feature | Collaboration mode (temporary) | **기본값**: 매 stream-aligned 의 default. 매 platform team의 too-early formation 의 avoid (먼저 stream-aligned 의 pain point 의 ). ## 🔗 Graph - 부모: [[Conway's Law]] · [[DevOps]] - 변형: [[Spotify Model]] - 응용: [[Platform Engineering]] · [[Internal Developer Platform]] - Adjacent: [[Domain-Driven Design]] · [[Microservices]] · [[SRE]] ## 🤖 LLM 활용 **언제**: 매 50+ engineer org 의 redesign. 매 platform team의 charter 의 draft. 매 cognitive load survey 의 analyze. **언제 X**: 매 <10 person startup (premature). 매 Conway 의 ignored 매 consulting deliverable. ## ❌ 안티패턴 - **Platform-first**: 매 stream-aligned 매 pain 없이 platform 의 build → unused. - **Permanent enabling team**: 매 coaching team의 forever 의 stay → "ivory tower". - **Component team**: 매 horizontal slice (e.g. "frontend team") — 매 stream 의 cut, hand-offs ↑. - **Too many interactions**: 매 every team의 every team 의 talk → 매 N² coordination cost. ## 🧪 검증 / 중복 - Verified (Skelton & Pais, "Team Topologies" 2019; teamtopologies.com 2026 case studies). - 신뢰도 A. ## 🕓 Changelog | 날짜 | 변경 | |---|---| | 2026-05-08 | Phase 1 | | 2026-05-10 | Manual cleanup — Team Topologies 4-type + interaction modes + Team API |