Platform & Infrastructure 07 Sep 2026 33 min read

The half-life of in-house infrastructure: a decade of Uber, read from its own repositories

How Uber's self-built platform changed between 2015 and 2026, reconstructed from the public repository record: what was built, what was donated to a foundation, what was archived with a dated notice, and what was left running with no commits and no warning.

A decade of one company's platform decisions read from the artefacts nobody edits on purpose: archive banners, last-commit dates, closed-unmerged pull requests and operator-filed incident reports. It gives an architect a decision tree for build-versus-adopt, a named taxonomy for how in-house systems exit (donated, deprecated, drifted), four production failure classes with transferable design rules, and a six-rung method for running the same excavation on their own dependency list.

The finding that surprised me

The Uber-originated software still shipping in 2026 is almost entirely the software Uber gave away, while several systems it kept are dead without saying so: Peloton, its unified scheduler, has taken no public commit since 1 October 2019 and still carries no deprecation notice.

What you get out of it

  • Retired infrastructure leaves by one of three doors, and only two of them are honest: donated to a foundation, deprecated with a dated banner, or drifted with a present-tense README and a dead commit history.
  • Retirement at scale is a batch activity, not a continuous one: thirteen archive repositories were relabelled deprecated on 3 December 2019, and Cherami and Hyperbahn were archived on the same day in February 2021.
  • Donation moves the maintenance cost rather than removing it, and the backlog age is the number that tells you how that is going: Apache Hudi triaged 555 open pull requests in July 2026 and closed 166 as obsolete.
  • Uber has published no postmortem in this corpus; the failure record of Jaeger, Hudi, Cadence and M3 is written by operators in other people's bug trackers, sometimes years later and sometimes with no maintainer reply at all.
  • The in-house components that survived are the ones no industry standard came for: Kraken still publishes benchmarks, while Makisu, Prototool and the whole TChannel stack were retired once the ecosystem produced equivalents.

Scope

Why this, now. Uber's live GitHub organisation holds 176 repositories and its archive organisation holds 160, so for the first time the retirements outnumber the survivors closely enough to read the sorting rule, and the two most recent repositories show the company has stopped publishing distributed-systems primitives altogether.

What it does not cover. No engineering-blog, talk, paper or cost evidence, and nothing about Uber's internal systems: this session's network policy reached github.com and no other host, so Schemaless, Docstore, Michelangelo, the domain-oriented service architecture and the cloud migration are all outside the corpus.

Open the field guide → Self-contained: it loads nothing at read time, follows your system theme, and prints cleanly.