Skip to content

Process

I ship by reducing ambiguity first, then building for credibility.

My process is a mix of product compression, systems design, fast implementation, and UI refinement. I care less about inflated roadmaps and more about getting the core loop working quickly, then tightening it until it feels trustworthy.

1. Clarify the real problem

I start by compressing the problem into a sharp product statement: who it serves, what friction it removes, and what outcome matters enough to ship for.

2. Design the system before the screens

For AI-heavy work, I define flows, failure modes, decision points, and data movement early. That keeps the interface grounded in how the system actually behaves.

3. Build the smallest credible version

I bias toward thin, working vertical slices instead of broad mock implementations. The goal is to validate the core loop fast and tighten it while the scope is still cheap.

4. Refine interaction and trust

Once the product works, I focus on clarity, motion, hierarchy, and response timing. In AI products especially, trust is built through understandable states and restrained UI.

5. Document what matters

I try to leave behind working demos, readable code, and concise explanations of architecture and tradeoffs so the project remains legible after the first ship.

What this means in practice

I prefer projects where I can shape the product logic, not just the UI shell. That usually means defining flows, handling edge cases, and making sure the final experience feels intentional from system behavior down to motion and copy.