Full episode · 1 h 34 m
Uber’s AI infra, from the inside
Uday Kiran Medisetty says Uber’s decade of developer infrastructure is helping agents build, test and maintain software at scale.
The Pragmatic Engineer · Gergely Orosz with Uday Kiran Medisetty
The best minutes
- 16:03Uber reused cloud workspaces to give agents ready-to-build repos3 min
- 29:31Uber generated MCP tools from service contracts5 min
- 1:06:31Production replay lets agents validate fixes against real traffic6 min
Also worth watching
- 38:34Uber’s context graph grounds Cortana in engineering relationships6 min
- 50:24Minion handles about 15% of Uber’s production PRs5 min
- 55:25Uber still requires human review on every PR6 min
- 1:17:44Wisdom makes employee-reported bugs easier to reproduce4 min
- 1:23:03Uber is shifting from diff counts to feature velocity8 min
Skip the roughly 13-minute microservices and early-tooling history and the 10-minute model gateway, AI FX, and token-spend walkthrough.
Summary · 4 min read
Uday Kiran Medisetty joined Uber in May 2015 and has worked on its real-time API and several business platforms. He is one of Uber’s Distinguished Engineers and leads much of its agentic AI work, according to the episode description.
Medisetty argues that Uber’s pre-AI investment in developer infrastructure gave it a strong foundation for using agents across engineering work. He describes systems for connecting agents to internal tools and knowledge, and for letting them build, test and maintain code across Uber’s services. Uber still requires human review for every production PR, while developing risk signals and automated checks to help reviewers focus. Medisetty says engineering productivity is shifting from counting code output toward measuring feature delivery, with engineers increasingly responsible for giving agents context and verifying their work.
Minute by minute
- 3:15
Uber’s early platform bets. Medisetty says he joined Uber in May 2015, when it had two services, and worked on RT API to connect mobile apps with internal services and support faster updates. As Uber expanded, it built service infrastructure and grew to thousands of services before standardizing on Go and Java around 2018–19. He says engineering grew from about 600 people to a few thousand, with 12 global tech sites.
- 9:52
Custom tools met Uber’s needs. Medisetty says Uber built tools for ownership and incident management, and created M3DB because its metrics volume—about 500 million metrics per second—exceeded what off-the-shelf systems could handle. It also built Michelangelo for machine learning and Cadence for durable workflows. Uber’s city-based operations shaped its configuration, experimentation and reliability tools.
- 16:03
DevPods became agent workspaces. Medisetty says Uber moved from separate service repositories to language-based monorepos, which made local setup and builds difficult. DevPods provided cloud workspaces with cached builds and managed tooling. Uber later created a workspace with all repositories for agents, which can use the same standardized build and test commands as engineers.
- 19:33
AI tools share common foundations. Medisetty says Uber built a model gateway on Michelangelo so teams could switch models while sharing security, policy, usage tracking and audit controls. AI Guard checks model requests and responses, while AI FX keeps tools, skills and settings consistent across coding harnesses. Spend tiers let engineers request more capacity with manager approval rather than imposing a hard limit.
- 29:31
MCP connects agents to tools. Medisetty says Uber’s MCP Gateway uses existing Thrift and protobuf service definitions to generate MCP tools, with configuration and security controls for teams to enable them. Vendor tools such as Google and Slack also go through the gateway, and Uber can expose MCP tools as CLIs. He says this reused the API gateway team’s experience with protocol transformations.
- 34:38
Shared skills reduce setup work. Medisetty says Uber maintains a shared repository for platform and team-built skills, portable across coding harnesses through AI FX. The repository supports centralized quality checks and evaluation, and he reports about 30,000 skill executions per day. Switching skills to a CLI pattern reduced the tools each skill kept in an agent’s context.
- 38:34
A context graph grounds answers. Medisetty says Uber’s context graph links people, services, PRs, design documents, incidents and other records, with more than 100 node types and 130 edge types. Cortana, Uber’s assistant, uses it to find relevant context before searching deeper, which he says can improve answer quality while reducing cost and latency. The assistant carries forward existing user permissions.
- 48:06
Planning gives agents a reliable spec. Medisetty says Uber’s product and engineering documents, reviews and approvals give people and agents a source of truth for project requirements and history. He argues that upfront planning matters because products vary across countries and cities, with many operational corner cases. A clear plan helps agents and engineers break work into tasks and execute it.
- 50:24
Minion handles background coding. Medisetty says Minion, Uber’s background coding agent, handles about 15% of production PRs. Engineers can give it a plan or prompt through the web or Slack, and it can work across repositories in a mega DevPod. Teams initially used it mostly for maintenance, while adding tools for it to validate more types of work.
- 55:25
Review tools surface useful signals. Medisetty says Uber moved simple CI checks into a single validation command and added visual testing and self-healing CI. Code Inbox gathers PRs, review status, test results and other signals, with risk and blast-radius information in development. Uber still requires a human to review every production PR; Medisetty says a low-risk auto-landing lane may come later if the checks prove reliable.
- 1:00:38
Slate and Capri help agents test. Medisetty says Slate routes a test account through an engineer’s branch while other services remain in staging, allowing end-to-end testing across multiple services. Agents can create Slate environments and compare behavior before and after a change. Capri captures production requests and downstream calls so teams can replay them and check changes against real traffic and supported combinations.
- 1:12:29
Automation manages code maintenance. Medisetty says Edge Gateway centralizes API traffic and uses service dependency data to help engineers and agents diagnose reliability issues. Shepherd runs migrations across monorepo modules, using deterministic rules or AI-based changes. Fox extends that system to recurring maintenance: enrolled services can receive weekly PRs for work such as dead-code cleanup and performance improvements.
- 1:17:54
Wisdom speeds up bug reproduction. Medisetty says Wisdom collects reports, logs and telemetry when Uber employees find bugs in internal app builds, then helps route issues to the right team and assemble reproduction steps. Debug Assist uses that context to identify a likely cause, and engineers can hand the investigation to Minion to create a PR. Engineers can also replay the reported network responses on a test device.
- 1:21:26
Productivity means shipping features. Medisetty says Uber is looking beyond code throughput toward feature velocity, including the mix of feature, bug-fix and maintenance PRs and the time it takes to ship features. He says engineers increasingly need to provide agents with context and constraints, manage parallel work and verify outputs. For a customer-support policy workflow, he says automation has reduced work that took weeks to a matter of days.
Published Oct 14, 2026.


