Generated from: “The 2026 platform roadmap by theme and quarter, with where we are now.”
View the Markdown
```meta
title: Platform roadmap 2026
subtitle: Four themes across four quarters, and where the platform stands in mid-September.
tag: Q3 UPDATE
```
The roadmap groups work by theme, not by team. A theme survives a reorg; a team name does not. Each item is one deliverable with a start quarter, an end quarter, and a status. The platform leads update the status at the start of every month.
```callout
tone: note
title: Assumptions
body: "The request gave no company, team, or item list, so this document invents them. The platform is the Orders platform (orders, checkout, billing, events). The four themes are Reliability, Developer experience, Data platform, and Cost. The current date is 13 September 2026, so now is Q3. Statuses reflect the September check-in. Replace any item or owner that does not match the real plan."
```
## Where we are in the year
The year runs as six phases. Planning closed in December 2025. Q3 delivery is in its last three weeks, so every Q3 item is either shipped or at risk of a move to Q4.
```chevrons
title: Roadmap phases
current: 4
steps:
- { label: Plan, desc: "Themes and Q1 items fixed, Dec 2025", accent: gray }
- { label: Q1 delivery, desc: "Jan to Mar, 3 of 3 items shipped", accent: green }
- { label: Q2 delivery, desc: "Apr to Jun, 3 of 4 items shipped", accent: green }
- { label: Q3 delivery, desc: "Jul to Sep, 4 items in flight", accent: blue }
- { label: Q4 delivery, desc: "Oct to Dec, 4 items planned", accent: gray }
- { label: Year review, desc: "Jan 2027, themes reset for 2027", accent: gray }
```
## Themes by quarter
The now rule sits on Q3. Every chip left of it is done or slipped; every chip right of it is a plan, not a commitment. The one risk chip, the egress cut, depends on a CDN contract that renews in November.
```roadmap
title: Platform roadmap 2026
periods: [Q1, Q2, Q3, Q4]
now: Q3
themes: [Reliability, Developer experience, Data platform, Cost]
items:
- { label: Multi-region Postgres, theme: Reliability, from: Q1, to: Q2, status: done, note: "Failover drill passed in June" }
- { label: Outbox in every service, theme: Reliability, from: Q2, to: Q3, status: current, note: "11 of 14 services migrated" }
- { label: Chaos game days, theme: Reliability, from: Q3, status: current }
- { label: Error budget policy, theme: Reliability, from: Q4, status: next }
- { label: Internal CLI v2, theme: Developer experience, from: Q1, status: done }
- { label: Preview environments per PR, theme: Developer experience, from: Q2, to: Q3, status: current, note: "Cost per environment above target" }
- { label: Golden-path service template, theme: Developer experience, from: Q4, status: next }
- { label: Event schema registry, theme: Data platform, from: Q1, to: Q2, status: done }
- { label: Partitioned consumers, theme: Data platform, from: Q3, status: current }
- { label: Warehouse sync under 5 minutes, theme: Data platform, from: Q4, status: later }
- { label: Spot instances for batch jobs, theme: Cost, from: Q2, status: done, note: "Batch spend down 41%" }
- { label: Egress cut 30%, theme: Cost, from: Q3, to: Q4, status: risk, note: "Waits on CDN contract renewal" }
- { label: Right-size Kubernetes requests, theme: Cost, from: Q4, status: next }
```
## Status of the Q3 work
Four items are in flight. Two are on track for the quarter end, one is at risk on cost, and one waits on a contract that we do not control. The update column holds the last fact each owner reported, not a forecast.
```statustable
title: Q3 items, September check-in
columns: [Item, Owner, Update]
statuses:
- { label: on track, color: success }
- { label: at risk, color: warn }
- { label: blocked, color: error }
rows:
- cells: [Outbox in every service, Reliability, "11 of 14 services migrated; the last 3 ship with the September release train"]
status: on track
subtasks:
- { cells: [Billing service, Reliability, "Outbox table and relay deployed to production"], status: on track }
- { cells: [Checkout service, Reliability, "Relay in canary since 9 September"], status: on track }
- { cells: [Notifications service, Reliability, "Schema migration waits on the freeze window"], status: at risk }
- { cells: [Chaos game days, Reliability, "Two of three game days done; third scheduled for 24 September"], status: on track }
- { cells: [Preview environments per PR, Developer experience, "Live for 6 of 9 repos; cost per environment is 2.3x the target"], status: at risk }
- { cells: [Partitioned consumers, Data platform, "Order events on 12 partitions in production; fulfilment events next"], status: on track }
- { cells: [Egress cut 30%, Cost, "Cache rules ready; the saving needs the new CDN tier, contract renews in November"], status: blocked }
```
## What could move an item to Q4
A slip in Q3 pushes into a quarter that already holds four planned items and the year review. The register lists the risks that the leads rated medium or higher in September. Each owner reports the mitigation at the October check-in.
```risk
title: Q3 and Q4 delivery risks
items:
- { risk: "CDN contract renews late and the egress cut misses the year", likelihood: med, impact: high, mitigation: "Procurement opened the renewal in August; fallback is a second CDN for static assets.", owner: Cost, status: mitigating }
- { risk: "Preview environment cost forces a rollback to shared staging", likelihood: med, impact: med, mitigation: "Idle environments stop after 2 hours; cap of 30 live environments per repo.", owner: Developer experience, status: mitigating }
- { risk: "Notifications outbox migration collides with the October freeze", likelihood: high, impact: med, mitigation: "Migration moves to the week before the freeze; the relay ships behind a flag.", owner: Reliability, status: open }
- { risk: "Third chaos game day finds a failover gap in multi-region Postgres", likelihood: low, impact: high, mitigation: "Game day runs against the standby region first.", owner: Reliability, status: open }
- { risk: "Q4 holds too much work after Q3 slips", likelihood: med, impact: med, mitigation: "Warehouse sync is the first item to drop; it is already marked later.", owner: Platform leads, status: accepted }
```