Enter password to view case study

Lensora · 0–1 mobile product
Making professional
photography guidance
feel effortless

I transformed a complex, back-and-forth shooting process into a guided linear experience. Each step gives the user one clear task, while a separate system layer measures whether they are ready to move forward.


Role
Sole Product Designer
RESPONSIBILITIES
End-to-end UX/UI design
Stage
0-to-1
Timeline
Nov 2025 - Feb 2026
01
Product context
The opportunity
Taking a strong portrait requires many interconnected decisions: framing, camera position, subject position, pose, lighting, and timing. Experienced photographers make these judgments almost simultaneously. For a beginner, that creates cognitive overload before they ever press the shutter.
Lensora uses scene understanding and visual templates to guide people through those decisions in real time.
Design challenge
How might we translate an interconnected expert process into simple instructions without losing the precision the system needs?
02
The original experience
Where the flow broke down
The system’s logic became
the user’s burden.
The original flow exposed dependencies between framing, positioning, and posing. Fixing one condition could invalidate another, sending users backward through repeated checks and correction loops.


Core insight
We simplified photography into individual steps, but the underlying variables remained deeply connected. As a result, users were forced to move backward whenever one adjustment affected another.
03
Key design decisions
Two structural changes
01
Simplify the user journey
I restructured the flow around dependencies between variables. Each step locks a foundational condition before the next begins: establish the shooting distance, use alignment and phone height to set the camera angle, then guide the pose. By ordering the adjustments from foundational to flexible, later actions no longer invalidate earlier ones, allowing users to move forward without repeated correction loops.
BEFORE
Interdependent and iterative
Adjusting one step often changed the others, leading to repeated corrections and back-and-forth.

Early attempts
Send users back to the last step
When a later adjustment disrupted an earlier step, users were asked to return and correct it. This preserved accuracy, but made the experience feel repetitive and frustrating.
Carry previous guidance forward
I also tried keeping earlier instructions visible in later steps. This reduced backtracking, but increased the amount of information users had to process at once, making the flow harder to follow.
Neither approach solved the underlying dependency between steps.
AFTER
Independent and linear
Thank you for viewing my work :)
Work in progress...
Still turning months of chaos into a coherent story.








