Lead Software Engineer & Technical Architect
Distributed systems · Cloud infrastructure · Developer tools · Game development
📍 England, UK · Portfolio · GitHub · LinkedIn
I build and operate distributed systems at Patchstack, working across cloud infrastructure, security automation, and observability.
Outside work, I build tools for other developers: a game engine, a workspace for AI coding agents, and a platform for learning game development.
An open-source 3D game engine with scene editing, visual scripting, physics, and live collaboration. Built around a local-first workflow, with browser and desktop support.
TypeScript · React · Three.js · Rapier · Tauri
A desktop workspace for running AI coding agents in parallel. Each task gets an isolated Git worktree, with app previews and code review in the same workspace.
AI coding agents · Git worktrees · Local development
My game development education platform: Unreal Engine courses, tutorials, downloadable resources, and tools for indie developers.
Unreal Engine · Education · Open source
At Patchstack, I work on security infrastructure supporting 12,000+ websites. My work includes:
- Modernising distributed services, reducing delivery cycles from six months to two.
- Architecting MCP servers for AI-driven security automation.
- Designing observability infrastructure with Prometheus and Grafana.
- Building Kafka-based pipelines for security intelligence processing.
Previously, at Frontier Developments, I built and maintained AWS backend services for Planet Zoo, working with MySQL, DynamoDB, and Redis on live game infrastructure.
| Area | Technologies |
|---|---|
| Backend | TypeScript, Node.js, PHP, Laravel, Python |
| Frontend | React, Vue, Nuxt |
| Cloud & delivery | AWS, Docker, Kubernetes, Terraform, GitHub Actions |
| Data & messaging | MySQL, DynamoDB, Redis, Kafka, Meilisearch |
| Observability | Prometheus, Grafana, distributed tracing |
| Games & desktop | Unreal Engine, Three.js, Tauri |
Currently learning Rust.
I’m particularly interested in how AI agents fit into everyday development, how to make distributed systems easier to debug, and how to keep live services reliable under load.
Game development is where I experiment with those ideas—and usually find another tool I want to build.





