Skip to content

Uber

Uber (uber.com/blog/engineering) is the largest mobility platform in the world (70+ countries, 10,500 cities, 130M+ customers as of 2024) and, via Uber Eats, the largest food-delivery platform ex-China (45+ countries). The engineering org has generated an unusually rich body of public system-design writing — TChannel, Hyperbahn, Ringpop, Schemaless, M3, Jaeger, H3, RIBs, Cadence, Michelangelo, Hudi were all invented, deployed at scale, and open-sourced at Uber.

Tier classification

Tier 1 (pending direct RSS scraper — see raw/_feeds.yaml note "Uber pending HTML scraper" in [[AGENTS.md]]). For now the wiki reaches Uber content through secondary aggregators (High Scalability, this companies/highscalability page, Fly.io commentary) and through linked-from references in Cadence, Hudi, etc.

Architectural eras (per the 2024 Josh Clemm retrospective)

Era Architecture Primary data store
2009 LAMP Single PHP/MySQL app, source code in Spanish MySQL
2011 two-monolith dispatch (Node.js) ↔ Object NodeAPI (Python) MongoDB → Redis / PostgreSQL
2013 SOA API split into ~100 Python/Tornado microservices PostgreSQL
2014 Halloween rewrite Schemaless on MySQL; Cassandra for dispatch MySQL (Schemaless) + Cassandra
2014 dispatch split RTAPI Node.js gateway + new dispatch with geospatial index + systems/ringpop gossip
2016+ mobile RIBs across rider / driver / Eats / Freight
2018 Project Ark Consolidation: Java + Go official; Python/JS deprecated for backend; monorepo per language
2020 Edge Gateway Four-layer stack: Edge / Presentation / Product / Domain
2021+ Fulfillment rewrite NewSQL rewrite on Spanner Spanner
2023+ cloud Crane makes 4,000+ stateless microservices cloud-portable Google + Oracle cloud

Key systems

In-house, open-sourced:

Adopted / migrated to:

Deprecated / archived:

  • PostgreSQL (single-DB era, replaced by Schemaless-on-MySQL + Cassandra in 2014).
  • Python / JavaScript on the backend (deprecated by Project Ark, 2018+; still used for mobile/web/ML).

Architectural themes (for cross-reference)

Recent articles

Last updated · 319 distilled / 1,201 read