技巧多源确认精选

Uber 内部开发者工具探秘:Model Gateway、MCP 与 Agent 工程实践

精选理由

带你逛 Uber 内部工具间,从 Model Gateway 到 MCP gateway 一网打尽,还讲了 agent 时代怎么重新衡量工程师产出,干货多。

Uber 工程师 Uday Kiran Medisetty 展示了公司内部开发者工具体系的现状。Uber 的基础架构以“城市”为一等概念,数据库按城市分片,每个城市绑定一个云区域并可随时切换。2023 年平台团队建成 Model Gateway,支持在 Anthropic、OpenAI 及自托管开源模型之间切换。针对 AI agents,Uber 还搭建了 MCP gateway、Agent Skills 仓库、context graph,并将 PR 按 feature、bugfix、maintenance 等类型打标,用来衡量 agent 时代工程师的真实产出。

原文 · Gergely Orosz

What do developer tools look like inside Uber, today? They are very different from what you would see at most places. We get a rare tour with one of Uber's longest-tenured engineers, Uday Kiran Medisetty (@udaykiran) - who was at Uber already when I joined in 2016!

Timestamps:

00:00 Intro 02:48 Uday’s early days at Uber 05:40 Uber’s move to microservices 07:55 Uber’s engineering team, then and now 09:05 Developer tooling before AI 16:03 DevPods 19:28 Building for AI agents 29:27 MCP gateway 34:37 Agent Skills repo 38:46 The context graph and Cortana 47:54 PRD and ERD tool 50:45 Minion 54:46 Testing and code review with Bazel, Slate, and Capri 1:12:26 Edge Gateway, Shepherd, and Wisdom 1:21:33 The changing role of engineer and measuring productivity 1:30:40 Uday’s favorite new products

Brought to you by:

• @turbopuffer – The tpuf eng team is rebuilding their storage architecture from first principles to make search faster, cheaper, and more reliable at scale. Follow along at https://t.co/h4kBELKz20

• @linear – the product development system for teams and agents. Check out Linear Diffs: a new feature to review PRs inside of Linear, with all the context in one place. https://t.co/knIF2mcz9p

• @WorkOS – how do you deal with agents and permissions? WorkOS built Airlock, the authorization layer for AI agents. Works with Claude Code, Codex and MCP gateways. https://t.co/OzuIJ1wHtZ

Three things you probably did not know about Uber:

1. At Uber, cities are a first-class concept that go all the way down to physical infrastructure.

One reason Uber had to build a lot of its custom tooling is how the concept of cities is a “basic primitive” that needs to be handled across systems like observability, feature flagging, deployments, and even service sharding. For example, in the early days, some services had their database sharded by cities. Even today, each city is pinned to a cloud region, and can fall over to another region at any time.

2. A single AI model gateway has paid lots of dividends.

In 2023, Uber’s platform team made the decision that everything built with AI needs to be model- and harness-agnostic. They built Model Gateway to support switching between Anthropic, OpenAI, other vendor models, and now also supports open models they run.

3. Uber tags PRs by the type of work each of those PRs do.

In the past, Uber measured “PR velocity:” how long it took for a PR (or, as Uber calls it: a “diff”) to get to production. With agents, doing so makes less sense, because it’s easy to create dozens or even hundreds of PRs, and many of those PRs might have no business impact on the product.

​So Uber now tags all PRs by type: feature, bugfix, maintenance, testing, or docs.

​They are seeing the percentage of “feature PRs” going up, and the percentage of “maintenance PRs” going down.​

I find this categorization to be a clever approach!

Uber 内部开发者工具探秘:Model Gateway、MCP 与 Agent 工程实践|AI热报