Designing for clarity under pressure
I work across product design and frontend development, usually embedded with small teams where one person needs to own both the interface and its implementation. My focus is on products where people are tired, busy, or under stress — finance tools, monitoring dashboards, internal systems — and where good design means reducing the number of decisions someone has to make.
That usually means fewer screens, fewer states, and a strong opinion about what doesn't need to be there. I care about the parts most projects skip: empty states, error messages, loading behaviour, and the small interactions that make a product feel considered rather than assembled.
I work in TypeScript and React day to day, with a design process that moves between Figma and code early, so decisions get tested against real constraints rather than idealised mockups.
A few recent projects
A budgeting application rebuilt around a single figure — what's safe to spend today — replacing a dashboard of charts that nobody trusted. Redesigned the core calculation, the onboarding flow, and the visual language end to end.
- Product design
- React
- TypeScript
- Design system
A component library and documentation site for an internal tools team, built to bring six different products onto one visual and interaction language. Focused on writing documentation that engineers actually use.
- Design systems
- Component architecture
- Documentation
A monitoring and incident dashboard, redesigned to stay legible during outages — clearer status hierarchy, calmer colour use under alert states, and a layout that holds up at 3am as well as it does in a demo.
- Frontend engineering
- Data visualisation
- Accessibility
Get in touch
I'm currently taking on a small number of new projects. The fastest way to reach me is by email.