top of page

ARTHUR SOSA

Building with AI at Uber: three tools and what each one changed

I design and I code. In my last year at Uber I built two AI agents and a way of prototyping in code. One agent won its category among 73 teams in an internal hackathon and went into production. At least five teams adopted the prototyping method.

Live (internal)

Uber internal tools

Senior invite.png
A metrics report for Brazil, with mobility and marketplace numbers, connected to three agents: interpretation, report design and ownership.

At a glance

What it is: A reporting agent that turns weeks of manual reporting into a 30-minute job. Navigable prototypes built in code for leadership reviews. An agent that reads a Figma design and writes the screen reader spec.

My role: On the reporting agent: concept, interaction design, front-end code (React, TypeScript) and the agent that assembles the report. Author of the prototyping method, which I taught to designers and researchers. Idea and team lead on the accessibility agent.

Results: Leadership reports that took two to three weeks to put together now take up to 30 minutes. The agent won the process innovation category among 73 teams and went into production. At least five teams adopted the prototyping method. In the pilot teams, accessibility testing moved ahead of the engineering build.

Tools: Cursor with Claude, React, TypeScript, Tailwind, Next.js, Vercel.


1. A reporting agent, in production

Leadership reports were put together by hand. Gathering the data for one report could take two to three weeks, so the numbers were old by the time anyone read them.


An email with a metrics report: an executive summary, four key points and a market summary for Brazil.

A cross-functional hackathon team and I built a chain of AI agents that does the work: one retrieves the data, one interprets it, one assembles the report, one opens the dashboard already filtered, and one finds the owner of each metric that got worse.


Diagram of the agentic reporting system. A scheduled trigger or a chat request goes to a router agent, which builds a new report, validates an existing one or finds the owner of a metric.

My part was the agent that assembles the report, and the front end. I made the report adapt to the kind of information it carries, in the order a leader reads it: the summary first, then the health of each market, then what got worse, with its impact and its owner.


Information architecture of the report, organized by the questions an executive asks: what is happening, why it matters, why it is happening, what we should do and who to talk to.

The agent consolidates everything and writes the email in up to 30 minutes. It won the process innovation category of an internal Uber hackathon, among 73 teams, and went into production for leaders with access to the data.


2. Prototypes in code

I started presenting projects in leadership reviews as navigable prototypes built with Cursor and Claude, with the rider and driver views linked. It changed how projects were presented in those reviews. At least five teams adopted the method, the design system team among them. I taught it to designers and researchers, and a Figma template based on mine was made available to the whole company.


3. Accessibility specs before engineering

Testing with people who use assistive technology needed engineers to build the screen first, so accessibility problems were found late. In a second hackathon, in February 2026, I conceived an agent that reads the Figma file, says how VoiceOver and TalkBack should announce each component, and generates the handoff spec plus an interactive screen to test with users. I put the team together.


It did not win. It became an internal pilot, used by the teams we worked in, and design leadership wanted to continue it. It was still a pilot when I left.


A note on what is shown

These tools run on internal data and infrastructure, so tool names and figures are left out. I can walk through the architecture in an interview.

bottom of page