About
Who I am
A software engineer with 20 years of experience, across advertising, insurance, healthcare and the public sector — for organisations ranging from small product teams to systems carrying high load and large user counts. My work is described by role and by technology; this page is about how I go about it.
How I work
- Reliability over cleverness. Systems that are boring in production are the goal.
- Clean code, unit tests and code reviews as habits, not ceremonies.
- Agile in the practical sense — continuous integration, sprint planning, Kanban.
- Comfortable owning the whole life cycle: planning, architecture, implementation, testing, packaging, deployment and the documentation that lets someone else take over.
I can work self-directed or as part of a team, and I have taken the lead role on both the technical design and the delivery side — mentoring developers, code review and everyday technical guidance — as well as the client-facing side: requirement clarification, on-site installation, demos and acceptance sign-off.
On AI tooling
I use AI assistants daily — Claude Code and GitHub Copilot mainly — across the whole development workflow: exploring unfamiliar codebases, implementing and refactoring, generating tests, reviewing changes, drafting technical documentation, and automating routine work. It is a productivity tool, not a decision maker: architecture and code quality stay my responsibility.
I have also introduced this approach into a team's everyday workflow, so that the whole team works with AI assistants the same way.
This site is one of the things that came out of that — see Projects.
Outside work
Licensed amateur radio operator since September 2026.