Central Theme
The presentation outlines Uber’s strategy for building and scaling AI-powered developer tools to enhance productivity for its 5,000 engineers. The core message revolves around using a modular, agent-based architecture with Langraph to create highly specialized, reusable, and performant tools that integrate seamlessly into developer workflows.
Key Products & Insights
Uber’s AI developer tool strategy is built on three pillars: focusing on high-impact products, building reusable foundational technologies (primitives), and intentionally designing for technology reuse across projects. Two flagship products were showcased:
- Validator: An in-IDE tool that automatically flags best-practice violations and security issues. It functions as a Langraph agent that composes multiple sub-agents, including both LLM-based analysis and deterministic tools like static linters. This composition allows it to provide reliable, pre-computed fixes directly to the developer.
- Autocover: A tool that auto-generates high-quality, validated, and coverage-raising unit tests. It operates as a complex graph of ‘domain expert’ agents (e.g., Scaffolder, Generator, Executor, and even Validator itself). This specialized, parallelized approach allows it to outperform general-purpose coding agents, achieving 2-3x more coverage in half the time.
These core components are also reused in other tools like an internal chatbot builder, a workflow assistant (Genie), and a PR review tool (U-Review), demonstrating the scalability of their approach.
Key Conclusions & Takeaways
Technical Learnings:
- Build Domain-Expert Agents: Creating ‘super capable’ agents for specific, bounded problems (like running tests or analyzing build files) yields exceptional performance and reliability compared to generalist agents.
- Compose with Deterministic Tools: When possible, use deterministic tools (e.g., linters) within your agentic graph. This improves reliability and reduces hallucinations for problems that don’t require an LLM.
- Prioritize Reusability: Solving a bounded problem once by creating an agent (e.g., a ‘build system’ agent) and reusing it across multiple applications is key to scaling development efforts.
Strategic Learnings:
- Encapsulation Fosters Collaboration: Well-defined agent abstractions (nodes in a graph) allow different teams (like security) to contribute their expertise without needing to understand the entire AI system, preventing internal competition and fostering collaboration.
- Graphs Improve More Than Just AI: Modeling workflows as graphs helps identify system-wide inefficiencies. Improving these bottlenecks for an AI agent often results in a better, faster experience for human developers as well.
Mentoring Question
The speakers emphasize building “super capable domain expert agents” for specific, bounded problems. What is one repetitive, well-defined task in your own development workflow that could be encapsulated into a specialized agent like their ‘Executor’ or ‘Validator’?
Source: https://youtube.com/watch?v=Bugs0dVcNI8&si=Kd3OVVFwkDdZIrbe
Leave a Reply