Zain Bacchus

Compressing wait time

After my first startup failed, I chose to join Facebook to better understand how a world-class product organization operated at scale. The practices I learned there held for years. They broke earlier this year, when AI assistance inside the canonical Bay Area product development process got fast enough that the process itself became the bottleneck.

The legacy process (research, PRD or spec, design, eng estimation, prioritization, build, ship) ran one step at a time because every step was expensive to produce. When a document takes days to write, you finish it, get it approved, and only then start the next one. Now a first prototype takes hours instead of weeks. The formal handoff that used to justify the next stage often takes longer to do than the next stage takes to build.

What remains expensive is deciding what is good enough, and getting the people who need to agree to actually agree. No one has authored a canonical process for this yet. While the majority of teams are still operating with the legacy process and using AI within that process, the teams that are shipping materially faster are collapsing the early handoffs and automating reviews.

The tipping point for me was watching two of our senior leaders ship features straight off our backlog in days, running the agent-native process end to end. When I talked to the team about why the staffed process was not keeping up, the bottleneck was obvious: it wasn’t code generation that was slow, but the handoffs. So we’ve thrown out the canonical process. We stopped waiting for a finished PRD or design before looking at the work. Agents review it while it is being built. With this change we’ve been able to ship Ult’s desktop and mobile web product from 0 to 1 within a month, something that would have taken months with the legacy process. Product velocity is up with a leaner team using AI. The next gain will come from making the whole process agent-native, not just running the legacy sequence with agents inside it.