More than 70% of Uber's pull requests now come from local or cloud agents, while lines of code per engineer have doubled year over year.
2
Uber routes model requests through shared gateways for identity, PII redaction, safety checks, tool access, and context retrieval.
3
The software factory moves validation into the inner loop, stops autonomous coding at a draft PR, and treats the decision to build as the next bottleneck.
Summary
Uday Kiran Medisetty describes six infrastructure pieces behind Uber's agentic software development work. A model gateway gives every request a caller, team, and project identity, redacts more than 20 PII types, runs five safety models, and keeps those checks under 100 milliseconds. An MCP gateway standardizes access to internal and SaaS tools while projecting them into a CLI to reduce context use. Pre-provisioned development environments give agents fast, isolated access to large repositories. A managed skills marketplace handles discovery, linting, review, and evaluation. A context graph connects ownership, dependencies, design documents, incidents, and code. Cortana packages these capabilities across Slack, the CLI, and the web. Adam Huda then shows a feature moving from a Slack idea to research, designs, code, visual validation, and a draft PR. Maintenance runs through scheduled, managed loops. The speakers are candid that infrastructure capacity, experiments, and product decisions now limit progress.
Uday Kiran Medisetty says Uber has a few thousand engineers across 12 global tech sites. After a year of investment in agentic AI, more than 70% of pull requests come from local or cloud agents, and lines of code per engineer have doubled year over year. The change reaches beyond coding into the wider engineering life cycle. Uber also completed more than 250 automated migrations covering 9 million lines of code. Earlier investments in monorepos and Bazel provided part of the foundation for this work.
A shared model gateway puts identity and safety on every request
Uber sends internal coding harnesses and external use cases through one OpenAI- and Anthropic-compatible endpoint. The gateway uses Spire for identity and authentication, a data anonymizer that redacts more than 20 PII types, and an AI guard with five specialized models for safety and policy. These checks run under 100 milliseconds. Requests are attributed to a caller, user, team, and project, both in real time and in the data lake. The gateway also captures audit logs and session traces for benchmarking and self-improvement. More than 800 projects send over 100 million model requests through it each day.
The MCP gateway reduces the token cost of internal tools
Uber had thousands of internal APIs and many SaaS tools, each with different authentication and setup requirements. Its MCP gateway uses an automated crawler to project internal APIs into MCP servers after a single configuration change. Google, Slack, Jira, and other SaaS MCPs use the same entry point, hosted by Uber with token exchange handled there. Omni MCP lets one installed MCP discover and invoke others. Uber then projected MCPs into a CLI so responses do not consume the model's context window. A code mode skill writes Python scripts for high-consumption use cases. Uday says these changes produced more than 40% fleetwide token savings.
Pre-provisioned development environments let agents start quickly
Uber adapted its remote devpod environments for agents that need to run for longer periods. The environments must be fast, isolated, installable in large numbers, and available across global sites. Kubernetes balloon pods are pre-provisioned with repository snapshots and built search indexes. When an agent needs an environment, it takes one of these pods and can begin within seconds. Uber also created a mega devpod containing all repositories in one place, since agents and engineers increasingly work across repositories. Non-engineering employees can use the environments to start agent harnesses quickly.
A managed skills marketplace controls quality and reuse
Engineers were creating duplicate skills in different repositories, while discovery and configuration were difficult and quality varied. Uber put core and domain-specific skills into a managed marketplace with one command for discovery and installation. The marketplace applies lint checks and automated reviews to establish a baseline. Some skills install automatically based on an engineer's persona. Uber is collecting traces, comments, and continuous evaluations so skill authors can improve their work. The marketplace contains 2,500 skills and handles more than 20,000 executions per day.
A context graph replaces scattered repository knowledge
Agents often spend time finding service locations, dependencies, owners, and required patterns. At Uber, this information was spread across 20 to 30 systems, each requiring its own skill or MCP. Uber's context graph connects information about mobile applications, backend systems, the data lake, design documents, Jira, incidents, and bugs. It has 150 node and edge types and 40 million entries. Skills for on-call root-cause analysis, planning, data analysis, and security scans can query the graph. Uday says the graph improves token use, the number of turns, and latency in examples such as generating SQL about cash mobility trips in India.
Cortana packages the infrastructure across company surfaces
Uber's Cortana assistant connects skills, MCPs, and the context graph through Slack, the CLI, and the web. Employees can ask questions, inspect code in any codebase, and receive answers using shared company context. They can also attach custom skills and prompts to a team Slack channel, creating a personalized assistant for that team. In the example described by Uday, multiple employees collaborate in the same Slack channel. During the last month mentioned in the talk, employees created 300 unique personas, and Cortana handled more than 20,000 sessions per day.
The software factory validates features before sending them to CI
Adam Huda follows a proposed World Cup stadium pickup feature from a Slack discussion into Cortana. Cortana researches the business opportunity, helps define a North America rollout, creates two Figma variants, and identifies possible code changes. Minion, Uber's cloud coding agent, then works across backend and frontend repositories in a devpod. It stops after creating a draft pull request instead of sending the change directly to CI. Uber wants advanced features validated before they add load to CI. The inner loop can run static checks, launch a simulator, compare screenshots with Figma specifications, and test frontend-backend integration. The outer loop still handles CI and deeper review.
Maintenance runs as a bounded loop with review data
Uber can enroll a feature or service in maintenance skills. For the example feature, a scheduled skill can remove the obsolete experiment variant after the other variant is selected. These loops run through a managed surface rather than being created without limits across the company. A schedule can use Sunday CI capacity and control how many diffs engineers see on Monday morning. Each generated diff receives comments and is either landed or rejected, creating data for improving the skill. Uber also plans to turn lessons from incident reviews into maintenance skills that apply across services.
"We really need to be able to validate the feature first and we want to prevent a lot of extra load coming on to CI."14:02
Who should watch
You are building shared infrastructure for coding agents and need to handle identity, privacy, safety, tools, and usage attribution in one place.
Your agents spend too many tokens discovering APIs, repository ownership, dependencies, or team-specific practices.
You are deciding how to move validation earlier than CI while keeping autonomous changes reviewable and maintenance work bounded.