Welcome
I'm a product designer and builder working across product, technology and design practice.
I design complex software, prototype ideas in working code, and help teams raise their design bar.
Welcome to my digital room
I'm a product designer and builder working across product, technology and design practice.
I design complex software, prototype ideas in working code, and help teams raise their design bar.
Welcome to my digital room
This is the extended cut. For faster reads, hit Selected Work.
Case studies from Mews and Revolut, from B2B to B2C and multiple surfaces. Live demos, full walkthroughs, and the metrics that shipped with them.
Side projects, visual experiments, and unfinished ideas that sit outside the main case studies.
A place to try things, break patterns, and follow curiosity.
Talks, workshops, and conversations on product design process, craft, and the messy middle between research and a live product.
Let’s talk shop.
Hotels were locked into one rigid menu, guests got a broken F&B experience. I led end-to-end design of Menu Manager on Android and Web
9s cut from every guest order, from 24s+
5.6′ to ship a full menu
91% adoption in European markets
Setup happens once on desktop, the payoff shows up in every order taken on the Android POS
Open demoManagers were duplicating products per variant one dish, six SKUs for size and flavor. I modeled it as one product with sellable forms instead, so setup happens once.
Managers can reorder sections themselves instead of shipping one fixed structure, so setup matches however their venue actually runs.
Drag-and-drop handles small menus; a searchable dropdown covers dense ones, so reordering doesn't turn into a bottleneck at scale.
Reduce time to complete an order in the POS app
Ship a full menu in minutes, not an ops project
Flexible enough that properties actually switch over
Section order and variants land on POS the way staff actually browse so guest orders take fewer taps
Cut from every guest order, from over 24s
To ship a full menu, end to end
Adoption in European markets
Mews needed US-ready tipping. I shipped it as the entry point, learned in production, then extended into guest checkout.
€24.7K tip revenue generated in the first 20 days
Average tip size rose to 4% from 1.5% baseline
€1.2M in tips processed in the first 35 days
We launched US tipping with presets and service-quality anchors, then used live results to shape how tipping works inside guest checkout
Open demoStaff had to set a tip on a slider, no presets, and percentages or amounts often had to be calculated manually.
Presets and service anchors tested against speed and tip rate
Presets and service-quality anchors shown together, guests can pick a service level or a percentage, both in one step
Payment time and tip health, whether tip amounts trend up or down over time.
Increase tip collection and reduce time to pay in POS app
Those patterns define tipping inside guest checkout
US tipping was the hard requirement
Guest self-checkout is the fuller product
Launch, learn, then fold tipping into the guest flow
Set up in Backoffice, POS app as tracking and fallback for staff and guests scan a QR code to handle bill split, payments and tipping on their devices
Guest facing, split bills, tip and pay without waiting on staff
Split bill, tip and pay for assisted checkout
Split bill options, tipping and QR code configuration
Scan the QR code in the bill, split the bill equally or by items, tip and pay without waiting on staff
Assign individual dishes so each guest pays only for what they ordered
Follow checkout from scan to payment without leaving the table
Staff can split and tip on POS when a guest can’t finish from the phone
Increased avg tip percentage of bill from 1.5% to 4%
Tips processed in the first 35 days
Tip revenue in the first 20 days
Revolut’s insurance quote flow was extensive and unclear. I launched Revolut’s business insurance product from ideation to launch.
-14% drop-off through the quote flow
Weekly quotes grew from 150 to 500+
+150 policies sold a week
I aligned web and app surfaces in one onboarding path from request to purchase, post purchase, cancelling flow and edge cases.
Active and previous plans with state
Extensive coverage documentation readily available
Users have the same flow in web and in app
Target reduce drop-off by 20% through the quote path.
Higher complete quote requests.
Fewer steps from request to price.
Drop-off reduced vs 20% target.
Weekly quotes, from 150
Policies sold a week