↓ Scroll down to experience the process
← Back to WorkThere's no magic formula. Just a framework I've refined across 18 years and dozens of projects structured enough to keep things honest, flexible enough to survive contact with reality.

I start by asking the uncomfortable questions what are we actually solving, and for whom? This phase is about getting everyone in the room aligned before a single pixel gets moved.

This is where gut feeling meets data. I map user behavior, dig into business constraints, and use frameworks like SWOT and product vision canvases to make sure I'm solving the right problem not just an interesting one.

The messiest, most honest part of the process. I generate a lot of ideas, most of them bad. Then I narrow down, build personas, map flows, and lock in the logic of what we're building before anyone writes a line of code.

Thinking made tangible. I keep fidelity deliberately low in early rounds clients fall in love with polish, and that's dangerous before you've validated anything. The goal is something testable, not something pretty.

It never really ends, and that's the point. I test each outcome, absorb the feedback, and go again. Not because the first answer was wrong but because better answers tend to show up after you've lived with the first one for a while.

There's no magic formula. Just a framework I've refined across 18 years and dozens of projects structured enough to keep things honest, flexible enough to survive contact with reality.
I start by asking the uncomfortable questions what are we actually solving, and for whom? This phase is about getting everyone in the room aligned before a single pixel gets moved.
This is where gut feeling meets data. I map user behavior, dig into business constraints, and use frameworks like SWOT and product vision canvases to make sure I'm solving the right problem not just an interesting one.
The messiest, most honest part of the process. I generate a lot of ideas, most of them bad. Then I narrow down, build personas, map flows, and lock in the logic of what we're building before anyone writes a line of code.
Thinking made tangible. I keep fidelity deliberately low in early rounds clients fall in love with polish, and that's dangerous before you've validated anything. The goal is something testable, not something pretty.
It never really ends, and that's the point. I test each outcome, absorb the feedback, and go again. Not because the first answer was wrong but because better answers tend to show up after you've lived with the first one for a while.