I've spent twenty years designing services that people depend on, not products they choose, but services they need to work. That shapes everything about how I think about design.

I started as a graphic designer, moved into UX, and gradually found that the most interesting problems were the complex ones: services with dozens of touchpoints, constrained by regulation, required to work for every user regardless of ability or digital confidence. I've been working on those ever since.

I prototype in code. Not because it's the only way, but because it's the most honest way; the only environment where branching logic, edge cases, and real constraints become visible early enough to do something about them. I pair programme with developers, build prototyping tooling when none exists, and write about what I learn.

I've led design teams of 40+ practitioners across multiple concurrent services. I've assessed the design quality of other organisations' work. I've built the infrastructure (component libraries, documentation systems, ways of working) that lets design teams do their best work consistently, not just occasionally.

I'm a BSc Psychology student at the Open University. That's not a qualification I use to sound interesting; it's the foundation of how I think about why people do what they do, which is the actual job.

Now

After more than a decade designing complex services in the public sector, I'm looking for new problems to work on, in fintech, healthcare, and product companies where design has real consequences and the stakes are high enough to make the work matter.

The side projects

I built a Rails todo app exploring AI-assisted development in Cursor. I run a prototyping course for designers who want to work in code. Both are experiments in learning by making.

Contact

Get in touch, or find me on GitHub.