Award winning product designer with over 10 years of experience crafting meaningful, impactful, and inclusive products and experiences.
AboutJournal
From university project to App Store: the ten-year arc of Drop
May 2026
Drop started as a final year project about stigma and self-injection. A decade later it's a shipped product used by people managing real conditions. What the gap between those two things actually looks like.
GLP-1 and the design opportunity hiding in plain sight
March 2026
The GLP-1 boom has generated enormous cultural noise. Underneath it is a quieter story: millions of first-time injectors who need better tools than anything currently built for them.
Why injection site rotation matters, and why no one was tracking it properly
January 2026
Injecting in the wrong place too many times quietly undermines the medication you depend on. Here's why rotation matters clinically, and why the tools to track it were nowhere near good enough.
Designing for stigma: building an app for a behaviour people do in private
November 2025
Self-injection is something millions of people do every day, often alone, often hidden. What it means to design a tool that genuinely understands that.
Getting Critical Alerts approved by Apple
October 2025
Standard notifications are not a safety net for missed injection doses. Getting Apple's Critical Alerts entitlement meant a precise clinical case — and clarity about who Drop is for.
Six years designing Amazon beauty products: what industrial design looks like at that scale
September 2025
Practical products bought to solve practical problems still deserve rigorous design. What six years in a commoditised category taught me about craft, feedback, and what it actually takes to make something good.
Building the spatial injection engine
July 2025
Drop's body heatmap looks simple on screen. Underneath it are a Metal shader pipeline in RealityKit and a spatial query engine that understands injection coordinates in 3D body space.
Why I chose SwiftData for Drop
April 2025
Core Data was the obvious choice for Drop's injection records. I chose SwiftData anyway — for Swift concurrency, SwiftUI queries, and CloudKit sync without the accidental complexity.