LEONARD LUVUNOLEONARD
UX/UI Designer · Quality Advocate · Johannesburg

Design it well. Then try to break it.

Six years designing product experiences and testing them until they hold. Manual testing, regression testing and UX audits are part of the same job as the wireframe.

Leonard Luvuno in a dark button-up shirt and glasses, looking off to the side outside a warmly lit building
Leonard Luvuno in a dark button-up shirt and glasses, looking off to the side outside a warmly lit building
20+
UX/UI projects
6+
Years of service
15
Collaborations

Two halves of one job

I design the experience and then I try to break it. Championing the user while keeping the platform bug-free.

01 DESIGN
  • Design systemsComponents, tokens, documentation teams actually use.
  • End-to-end flowsResearch, journeys, wireframes, high-fidelity prototypes.
  • Workshop facilitationGetting stakeholders to one decision, in one room.
02 QUALITY
  • Manual testingWalking every path a real user will take, before they do.
  • Regression testingNew release, old promises still kept.
  • UX auditsFindings ranked by user cost, not by how easy they are to fix.

Selected work

More on Behance →

Skills & tools

Creativity, strategy and precision - the core of everything I make.

Figma
Design system expert
Adobe XD
Prototyping pro
FigJam
Workshop facilitator
HTML & CSS
Frontend foundations
Photography
Visual storytelling
Photoshop
Image mastery
Illustrator
Vector graphics
AI Tools
Future-forward design

About

Six years of UX and over a decade behind a camera. Both taught me the same thing: composition is a decision about what someone sees first.

I bring a human-centered approach to both pixels and people - designing with heart, testing with logic, and evolving with AI.

Email
hi@leonardluvuno.com
Phone
+27 67 937 2813
City
Johannesburg, Gauteng
Birthday
30 March
Portrait of Leonard Luvuno in a dark collarless shirt and glasses, hands in his pockets
Portrait of Leonard Luvuno in a dark collarless shirt and glasses, hands in his pockets
Open to product design & QA roles

Send me the messy problem.

LEONARD LUVUNOLEONARD
LEONARD LUVUNOLEONARD
hi@leonardluvuno.com
{{ heroKicker }}

{{ heroHeadline }}

{{ heroBody }}

{{ heroAlt }}
{{ heroAlt }}
20+
UX/UI projects
6+
Years of service
15
Collaborations

Two halves of one job

I design the experience and then I try to break it. Championing the user while keeping the platform bug-free.

01 DESIGN
  • Design systemsComponents, tokens, documentation teams actually use.
  • End-to-end flowsResearch, journeys, wireframes, high-fidelity prototypes.
  • Workshop facilitationGetting stakeholders to one decision, in one room.
02 QUALITY
  • Manual testingWalking every path a real user will take, before they do.
  • Regression testingNew release, old promises still kept.
  • UX auditsFindings ranked by user cost, not by how easy they are to fix.

Selected work

More on Behance →

Skills & tools

Creativity, strategy and precision - the core of everything I make.

{{ tool.name }}
{{ tool.role }}

About

Six years of UX and over a decade behind a camera. Both taught me the same thing: composition is a decision about what someone sees first.

I bring a human-centered approach to both pixels and people - designing with heart, testing with logic, and evolving with AI.

Email
hi@leonardluvuno.com
Phone
+27 67 937 2813
City
Johannesburg, Gauteng
Birthday
30 March
{{ aboutAlt }}
{{ aboutAlt }}
Open to product design & QA roles

Send me the messy problem.

{{ csKicker }}

{{ csTitle }}

{{ csSummary }}

{{ row.label }}
{{ row.value }}

The brief

{{ csBrief1 }}

{{ csBrief2 }}

Outcome

{{ csOutcome }}

{{ csLinkLabel }}

Process

  1. {{ step.n }} {{ step.title }} {{ step.body }}
{{ csImageAlt }}
{{ csImageAlt }}
Want this walked through live?
Contact

Email is fastest.

I reply within a day. Tell me the problem in a sentence - we can figure out the rest on a call.

Email hi@leonardluvuno.com Phone +27 67 937 2813
Location Johannesburg, South Africa

Or send a message

{{ nameError }}
{{ emailError }}
{{ subjectError }}
{{ messageError }}
Message sent. You'll hear from me within a day.
{{ sendErrorMessage }}