A self-service early-access portal where customers turn on beta features and share feedback on their own — designed in code with AI and shipped to customer beta in about a month.
Customers turn on beta features themselves and send feedback right from the product, instead of waiting for a product manager to recruit them one by one.
The old feedback model ran entirely on outreach, with a person in the middle of every loop. Alpha and beta were where the work stalled.
| Pain | Reality |
|---|---|
| Recruitment | Product managers spent days to weeks per program finding customers |
| Response rate | Manual outreach landed under 1% |
| Dependency | Every conversation brokered through customer success |
| Repetition | The whole cycle restarted at alpha → beta → GA |
A portal where customers opt into early access and send structured feedback themselves — no recruitment, no one brokering the middle.
Opt into early access and shape the product on their own terms, instead of waiting to be found.
Feedback comes back tagged and routed, so product managers reclaim the weeks lost to recruitment and synthesis.
Covering research framing, the end-state vision, every iteration, and the build that shipped to engineering. No separate design team, and deliberately no Figma stage.
The artifact under review was the implementation, so feasibility and scope got resolved in one conversation instead of across three.
Every Friday, product, engineering, and leadership reviewed the same working software — not a mockup, not a spec. That changed how the team worked together.
Feasibility, design intent, and scope got resolved live in the room, instead of bouncing across separate design review, eng scoping, and PM alignment meetings.
Everyone reacted to the same real thing each week, instead of carrying their own mental model of what "the feature" was supposed to be.
Leadership could see progress firsthand every week, which made it easier to greenlight scope changes without a lengthy re-pitch.
It began with a starting direction from product, taken much further before the first real build.
A wider teardown of how Linear, Vercel, Notion, Stripe, and Slack each handle beta — down to the design-system details.
The PM's Lovable concept rebuilt inside the real Duo admin shell, as an Early Access settings page. A grounded starting point, before real content structure or a feedback loop.
The first build designed in code. Page inside the admin panel, feature-list structure, status, enable/disable, and a feedback prompt.
Explored where early access lives: dedicated homepage vs. top-nav entry. A content pass tightened feature names and descriptions.
The PRD was a North Star: direction, with almost no requirements. Instead of waiting for it to fill in, I designed the end state in code, then cut scope down to the V1 worth shipping first.
| Earlier attempt | This time |
|---|---|
| Build toward the full automated vision | Start with the simplest possible version |
| Scope kept expanding | Iterate weekly, nothing gets scrapped |
| Never shipped | Every V1 decision made with the end state in mind |
Feedback intake, routing, and the early-access surface consolidated into what customers actually touch. Handed to engineering, now entering customer beta.
V1 went into customer beta and is actively in review, gathering more feedback as customers use it.
The biggest shift wasn't a feature — it was the loop the whole team worked in.
Each iteration went from idea to a working, clickable build in hours instead of weeks — design stayed ahead of the project instead of trailing it.
Weekly reviews shifted from critiquing mockups to critiquing working software — feasibility questions got answered on the spot, not punted to a follow-up.
Less upfront spec meant more in-flight scope negotiation — the PRD got written against something real, but it was written later, not first.
The real shift was the process. Designing in code with AI turned ideas into working screens in hours instead of weeks, so design ran ahead of the project instead of trailing it.