Sole PM, designer and engineer. The non-goals were written before any code, which is the only reason a week was enough.
Product Management · Berkeley Haas
I write the PRD, then I build the thing.
MBA / MEng candidate at UC Berkeley Haas & IEOR. Three years atAWS building analytics products for an $80B sales org — then I started shipping my own.
01 — Shipped alone · Aug 2026
TripMatch
A 400-person cohort coordinated rides by scrolling a WhatsApp chat, where requests get buried and matching seats go unused. I shipped a verified, Berkeley-only rides board — problem framing through production.
Read the case study →Verified sign-in, structured board, seat claims with capacity enforcement, comments, audit log, feedback inbox.
The day before launch, a race condition let two simultaneous posts silently delete each other. You post, you see it appear, on refresh it's gone — so you post again, which makes the race more likely. I rebuilt the storage layer rather than ship it.
Three feedback-driven iterations after launch: owner-scoped delete, in-place edit that preserves comment threads, and date chips that only appear once the board spans more than one date.
The product decision
Non-goals are the product decision.
TripMatch shipped in six days because I wrote down what it would never do, before writing any code. Every line below was a deliberate cut, and each one bought the schedule.
Venmo already works. Adding money introduces trust and liability complexity that buys no additional matches.
The job is surfacing the match. Logistics between two classmates is already solved — they text each other.
Final coordination stays in chat. Owning the whole conversation would mean competing with an app at 100% adoption.
Opening to strangers re-introduces the exact trust problem the design exists to avoid.
A link is the right form factor — zero install friction, one tap from the group chat where the users already are. Distribution determined the form factor, and later produced the nastiest bug in the project.
02 — 0 → 1 at scale · AWS, 2023–2026
Action Hub
A sales org running on roughly 200 dashboards, with no agreed place to start the day. I owned the technical chapter's first tab: every open issue across a seller's accounts, ranked, with the next action named on each one.
Read the case study →Everything else
The full shelf.
7 more — agentic tooling, forecasting, data governance, go-to-market, full-stack engineering, and reinforcement learning.
Pull-Request Automation
Agentic AIBuilder and product owner · Amazon's internal OpenClaw platform · 2023–2026
Getting a finished change into code review took eight mandatory steps and 30–60 minutes, none of it thinking. A skill built on Amazon's internal OpenClaw platform now does all eight, leaving about five minutes of genuine decisions — and stops precisely where a human reviewer starts.
GenAI Target Setting
ForecastingAnalytics and target-setting methodology · AWS Global Sales Strategy & Analytics · 2024
The first year AWS carried a GenAI goal, the metric being targeted had barely existed twelve months earlier. Forecasting it directly was impossible, so the model forecast a leading indicator that did have history and converted through it — then shipped with a quarterly mechanism to correct itself.
Allowlist
Data governanceBuilder and product owner · AWS Global Sales Strategy & Analytics · 2023–2026
Exceptions to sellers' data access lived in a spreadsheet anyone could edit, with no record of who changed what. Allowlist replaced it with a constrained application: read everything, add, remove — but never edit in place, and every action logged.
GenAI Adoption Program
Go-to-marketProduct owner · with the LATAM sales director and a principal seller · 2024
GenAI tooling existed; usage didn't. Rather than mandate it, I partnered with the LATAM sales director and a principal seller on a points-and-leaderboard programme that reached over 75% participation in 60 days — because the rewards were designed for the people who would never finish first.
Sole designer and engineer · Sep 2026
A networking tracker for Berkeley contacts where one user's list is unreachable to another even if the API layer were bypassed entirely — because the boundary lives in Postgres, not in application code.
Ms. Pac-Man DQN
Reinforcement learningMBA 290T — Fundamentals of Agentic AI · Sep 2026
Mean evaluation score rose from 492 to 906 (+84%). The more interesting finding was that the untrained baseline wasn't random at all — it was stuck, repeating one move 95.4% of the time, which means the headline number flatters the result.
Sole engineer · Sep 2026
Scans roughly 29,400 postings in about 50 seconds every weekday, and opens a GitHub issue only when something new appears. The hard problem turned out not to be finding roles — it was deciding which two per company were worth your attention.