About me
What I do
I run Compiled Creations, a one-person software consultancy. When you work with Compiled Creations you work with me: no account managers, no juniors, no hand-offs.
Most of my time goes on full-stack web development: TypeScript and React in the browser, TypeScript and Node behind it. I’ve also spent years in C++ building desktop apps for Mac and Windows, so I’m often the person asked to port something from one to the other, or from the desktop to the web. These days I’m mostly working on scientific software.
I’ve also been a team lead, Scrum Master, Product Owner and coach, which means I have opinions about how teams work. Some of them are even right.
How I got here
- The 1980s
ZX Spectrum 48K+, then an Amiga 500
Games got me hooked, and I wanted to make them. I still do.
Software engineer at Improvision
Scientific imaging software in C++, on Mac and Windows. I learnt early that software scientists rely on has to just work.
- 2000s
Team lead, Scrum Master, Product Owner, coach
I ran teams, ran sprints, owned backlogs and coached people through all of it. Then I ended up in a purely management job and realised I missed building things.
Went self-employed
Back to hands-on work, on my own terms.
Founded Compiled Creations
My software consultancy: web, desktop, backend and porting work, done by me.
- Now
Full-stack, mostly
TypeScript and React up front, Node behind, and C++ when a desktop app needs it. Still trying to finish that game.
Toolbox
Things I’ve used enough to have opinions about.
Languages
- TypeScript
- C++
- HTML and CSS
- Objective-C
- C#
- Java
Frameworks and libraries
- React
- Node.js
- OpenGL
- AppKit
- .NET
Tools
- Git
- Docker
- Jenkins
- Emscripten
- Xcode
- Claude Code
- Godot
Practices
- Test-driven development
- Agile and Scrum
- Cross-platform development
- Porting desktop apps to the web
- Coaching and team leadership
Outside work
Games are the reason I got into this. A Spectrum 48K+ and then an Amiga 500 turned me from someone who played games into someone who desperately wanted to make them. I have a GitHub graveyard of unfinished game prototypes to prove it, and I’m currently building a small turn-based RPG in Godot that I fully intend to finish. Honest.
When I’m not coding I’m usually reading, mostly sci-fi and fantasy: Brandon Sanderson, Robin Hobb and Terry Pratchett are the favourites. Otherwise I’m playing something (Zelda, Civilization, Baldur’s Gate 3, Balatro, or anything Nintendo makes) or watching an embarrassing amount of Star Wars and Star Trek.
A daily walk keeps me sane. Mostly.