Try free
9 min read Guide 822 of 877

Platform Team Patterns

Platforms enable teams. GitScrum helps platform teams track their work and measure the impact of their internal products on delivery speed.

Platform Team Fundamentals

What Platform Teams Do

PLATFORM TEAM PURPOSE:
┌─────────────────────────────────────────────────────────────┐
│                                                             │
│ MISSION:                                                    │
│ ────────                                                    │
│ Enable stream-aligned teams to deliver faster             │
│ by providing self-service platform capabilities           │
│                                                             │
│ ─────────────────────────────────────────────────────────── │
│                                                             │
│ WHAT PLATFORM TEAMS BUILD:                                  │
│ ──────────────────────────                                  │
│                                                             │
│ INTERNAL DEVELOPER PLATFORM (IDP):                         │
│ ┌─────────────────────────────────────────────────────────┐│
│ │                                                         ││
│ │ ┌───────────────────────────────────────────────────┐  ││
│ │ │ SELF-SERVICE PORTAL                               │  ││
│ │ │ • Create new service                             │  ││
│ │ │ • Deploy to environment                          │  ││
│ │ │ • Provision database                             │  ││
│ │ │ • View service health                            │  ││
│ │ └───────────────────────────────────────────────────┘  ││
│ │                       │                                 ││
│ │                       ▼                                 ││
│ │ ┌───────────────────────────────────────────────────┐  ││
│ │ │ PLATFORM CAPABILITIES                             │  ││
│ │ │ ┌──────────┐ ┌──────────┐ ┌──────────┐           │  ││
│ │ │ │   CI/CD  │ │  Infra   │ │ Monitor  │           │  ││
│ │ │ │ Pipelines│ │Provision │ │ /Observe │           │  ││
│ │ │ └──────────┘ └──────────┘ └──────────┘           │  ││
│ │ │ ┌──────────┐ ┌──────────┐ ┌──────────┐           │  ││
│ │ │ │ Security │ │  Data    │ │ Service  │           │  ││
│ │ │ │ Scanning │ │ Platform │ │  Mesh    │           │  ││
│ │ │ └──────────┘ └──────────┘ └──────────┘           │  ││
│ │ └───────────────────────────────────────────────────┘  ││
│ │                                                         ││
│ └─────────────────────────────────────────────────────────┘│
│                                                             │
│ KEY PRINCIPLE:                                              │
│ ──────────────                                              │
│ Teams can use the platform WITHOUT asking the platform    │
│ team for help. That's self-service.                       │
└─────────────────────────────────────────────────────────────┘

Product Mindset

Platform as Product

TREAT PLATFORM AS A PRODUCT:
┌─────────────────────────────────────────────────────────────┐
│                                                             │
│ YOUR CUSTOMERS = Other development teams                   │
│                                                             │
│ PRODUCT THINKING:                                           │
│ ─────────────────                                           │
│                                                             │
│ UNDERSTAND USERS:                                           │
│ • Talk to development teams                               │
│ • Understand their pain points                            │
│ • Watch them use your platform                            │
│ • Collect feedback continuously                           │
│                                                             │
│ PRIORITIZE:                                                 │
│ • What problems cause most friction?                      │
│ • What would save most time?                              │
│ • What do teams ask for repeatedly?                       │
│                                                             │
│ ITERATE:                                                    │
│ • Start simple, improve based on feedback                 │
│ • Don't over-engineer                                     │
│ • Release early, release often                            │
│                                                             │
│ ─────────────────────────────────────────────────────────── │
│                                                             │
│ PLATFORM BACKLOG:                                           │
│ ┌─────────────────────────────────────────────────────────┐│
│ │ PLATFORM TEAM BACKLOG                                   ││
│ │                                                         ││
│ │ PRIORITY    ITEM                    REQUESTER          ││
│ │ ────────    ────                    ─────────          ││
│ │ P1          One-click deploys       (5 teams)          ││
│ │ P1          Database provisioning   (4 teams)          ││
│ │ P2          Centralized logging     (3 teams)          ││
│ │ P2          Secrets management      (2 teams)          ││
│ │ P3          Feature flags service   (1 team)           ││
│ │                                                         ││
│ │ PRIORITIZE BY: Customer demand + Strategic value       ││
│ └─────────────────────────────────────────────────────────┘│
│                                                             │
│ NOT A TICKET QUEUE:                                         │
│ ───────────────────                                         │
│ Platform team decides WHAT to build                       │
│ Not just fulfilling requests                              │
│ Think strategically about capabilities                    │
└─────────────────────────────────────────────────────────────┘

Self-Service Design

Enable, Don't Block

SELF-SERVICE PRINCIPLES:
┌─────────────────────────────────────────────────────────────┐
│                                                             │
│ BEFORE (Blocking):                                          │
│ ──────────────────                                          │
│ ┌─────────────────────────────────────────────────────────┐│
│ │ Dev Team: "I need a new database"                      ││
│ │ Platform: (Files ticket)                                ││
│ │ Dev Team: (Waits 3 days)                               ││
│ │ Platform: "Here's your database"                       ││
│ │                                                         ││
│ │ PLATFORM TEAM = BOTTLENECK                             ││
│ └─────────────────────────────────────────────────────────┘│
│                                                             │
│ AFTER (Self-Service):                                       │
│ ─────────────────────                                       │
│ ┌─────────────────────────────────────────────────────────┐│
│ │ Dev Team: "I need a new database"                      ││
│ │           (Uses platform portal)                       ││
│ │           [Select: PostgreSQL, Size: Medium]           ││
│ │           [Create Database]                            ││
│ │ Platform: (Automatic provisioning)                     ││
│ │ Dev Team: (Has database in 5 minutes)                  ││
│ │                                                         ││
│ │ PLATFORM TEAM = ENABLER                                ││
│ └─────────────────────────────────────────────────────────┘│
│                                                             │
│ ─────────────────────────────────────────────────────────── │
│                                                             │
│ SELF-SERVICE CAPABILITIES:                                  │
│                                                             │
│ COMMON PLATFORM FEATURES:                                   │
│ • Create new service from template                        │
│ • Deploy to any environment                               │
│ • Provision database/cache/queue                          │
│ • Configure monitoring/alerts                             │
│ • Manage secrets                                           │
│ • View logs                                                │
│ • Rollback deployment                                     │
│                                                             │
│ GUARDRAILS, NOT GATES:                                      │
│ ──────────────────────                                      │
│ • Security scanning automatic                             │
│ • Compliance built-in                                     │
│ • Cost visibility                                          │
│ • Best practices baked into templates                     │
│                                                             │
│ Teams can move fast AND stay safe                         │
└─────────────────────────────────────────────────────────────┘

Platform Metrics

Measuring Success

PLATFORM TEAM METRICS:
┌─────────────────────────────────────────────────────────────┐
│                                                             │
│ ADOPTION METRICS:                                           │
│ ─────────────────                                           │
│ How many teams use the platform?                          │
│                                                             │
│ ┌─────────────────────────────────────────────────────────┐│
│ │ PLATFORM ADOPTION                                       ││
│ │                                                         ││
│ │ Teams using platform: 12/15 (80%)                      ││
│ │                                                         ││
│ │ BY CAPABILITY:                                          ││
│ │ • CI/CD Pipeline:      15/15 (100%) ████████████████   ││
│ │ • Service Templates:   12/15 (80%)  █████████████      ││
│ │ • Observability:       10/15 (67%)  ██████████         ││
│ │ • DB Provisioning:     8/15 (53%)   ████████           ││
│ │ • Feature Flags:       5/15 (33%)   █████              ││
│ │                                                         ││
│ │ Low adoption = Discovery problem or usability issue    ││
│ └─────────────────────────────────────────────────────────┘│
│                                                             │
│ ─────────────────────────────────────────────────────────── │
│                                                             │
│ DEVELOPER EXPERIENCE:                                       │
│ ─────────────────────                                       │
│ How happy are teams with the platform?                    │
│                                                             │
│ • Developer Satisfaction Survey (quarterly)               │
│ • Net Promoter Score for platform                         │
│ • Time to onboard new service                             │
│ • Time from commit to production                          │
│                                                             │
│ ─────────────────────────────────────────────────────────── │
│                                                             │
│ ORGANIZATIONAL IMPACT:                                      │
│ ──────────────────────                                      │
│ Is the platform making the org faster?                    │
│                                                             │
│ DORA METRICS (Org-wide):                                   │
│ ┌─────────────────────────────────────────────────────────┐│
│ │ BEFORE PLATFORM    AFTER PLATFORM    IMPROVEMENT       ││
│ │ ──────────────     ──────────────    ───────────       ││
│ │ Deploy: 2/week     Deploy: 5/day     +1650%           ││
│ │ Lead: 2 weeks      Lead: 2 days      -86%             ││
│ │ MTTR: 4 hours      MTTR: 30 min      -88%             ││
│ │ Fail: 15%          Fail: 5%          -67%             ││
│ └─────────────────────────────────────────────────────────┘│
│                                                             │
│ PLATFORM ROI:                                               │
│ Teams saved × hours saved per team = Platform value       │
└─────────────────────────────────────────────────────────────┘

Team Interaction

Working with Stream Teams

INTERACTION MODES:
┌─────────────────────────────────────────────────────────────┐
│                                                             │
│ X-AS-A-SERVICE (Primary):                                  │
│ ─────────────────────────                                   │
│ Platform provides capability                              │
│ Teams consume via self-service                            │
│ Minimal interaction needed                                │
│                                                             │
│ COLLABORATION (When needed):                               │
│ ────────────────────────────                                │
│ Platform team works WITH stream team                      │
│ For: new capabilities, complex requirements               │
│ Time-limited, specific goal                               │
│                                                             │
│ ─────────────────────────────────────────────────────────── │
│                                                             │
│ SUPPORT MODEL:                                              │
│ ┌─────────────────────────────────────────────────────────┐│
│ │ PLATFORM SUPPORT                                        ││
│ │                                                         ││
│ │ TIER 1: Documentation (Self-Service)                   ││
│ │ • Docs site                                            ││
│ │ • Tutorials                                            ││
│ │ • FAQs                                                 ││
│ │ Most questions answered here                          ││
│ │                                                         ││
│ │ TIER 2: Community (Async)                              ││
│ │ • #platform-help Slack channel                        ││
│ │ • Answered by platform team or community              ││
│ │ • SLA: Response within 4 hours                        ││
│ │                                                         ││
│ │ TIER 3: Direct Support (When needed)                   ││
│ │ • Scheduled pairing sessions                          ││
│ │ • For complex issues                                  ││
│ │ • Office hours (1hr/week)                             ││
│ │                                                         ││
│ │ ESCALATION:                                             ││
│ │ • Production issues: Immediate                        ││
│ │ • Blocking issues: Within day                         ││
│ └─────────────────────────────────────────────────────────┘│
│                                                             │
│ GOAL: Minimize direct support through better platform     │
│ High support load = Platform usability problem           │
└─────────────────────────────────────────────────────────────┘

Building the Platform

Iterative Approach

PLATFORM EVOLUTION:
┌─────────────────────────────────────────────────────────────┐
│                                                             │
│ DON'T BUILD EVERYTHING AT ONCE:                            │
│ ────────────────────────────────                            │
│                                                             │
│ START THIN:                                                 │
│ ┌─────────────────────────────────────────────────────────┐│
│ │ PHASE 1: Foundation (3 months)                         ││
│ │ • CI/CD pipeline                                       ││
│ │ • Basic deployment                                     ││
│ │ • Core observability                                   ││
│ │                                                         ││
│ │ VALUE: Teams can deploy independently                 ││
│ └─────────────────────────────────────────────────────────┘│
│                                                             │
│ EXPAND BASED ON NEED:                                       │
│ ┌─────────────────────────────────────────────────────────┐│
│ │ PHASE 2: Common Needs (3 months)                       ││
│ │ • Service templates                                    ││
│ │ • Database provisioning                                ││
│ │ • Secrets management                                   ││
│ │                                                         ││
│ │ VALUE: Faster service creation                        ││
│ └─────────────────────────────────────────────────────────┘│
│                                                             │
│ ┌─────────────────────────────────────────────────────────┐│
│ │ PHASE 3: Advanced (Ongoing)                            ││
│ │ • Feature flags                                        ││
│ │ • Canary deployments                                   ││
│ │ • Cost management                                      ││
│ │                                                         ││
│ │ VALUE: Sophisticated delivery capabilities            ││
│ └─────────────────────────────────────────────────────────┘│
│                                                             │
│ ─────────────────────────────────────────────────────────── │
│                                                             │
│ THIN-SLICE APPROACH:                                        │
│ ────────────────────                                        │
│ Get ONE team using platform end-to-end                    │
│ Learn from their experience                               │
│ Improve before scaling to more teams                      │
│                                                             │
│ AVOID: Building "complete" platform in isolation         │
└─────────────────────────────────────────────────────────────┘