Bloom
- Local-first coffee journal and SvelteKit PWA
- Offline SQLite storage with multi-device sync
- GitOps deployment with Kubernetes, ArgoCD, Keycloak, and RabbitMQ
A software developer enthused about crafting beautiful code.
Engineering strengths
I'm a JavaScript framework nerd at heart, with the full-stack breadth to take a product from interface and API through to deployment and operation.
Angular, Svelte, React, TypeScript, state architecture, and design systems.
.NET services, domain modelling, RabbitMQ, and event-driven workflows.
Helm, ArgoCD, GitHub Actions, AKS, and self-hosted clusters.
OpenTelemetry instrumentation, dashboards, alerting, and performance testing.
Pulumi, NixOS, reproducible environments, microVMs, and secrets management.
Architecture, testing, delivery, telemetry, and operating what I ship.
I'm a full-stack software engineer working across web applications, .NET services, distributed systems, and the platforms they run on. I enjoy getting deep into frontend frameworks, while following a "you build it, you run it" approach to architecture, delivery, and observability.

I previously worked as a brewer before deciding to change careers and went back to university to pursue a degree in Philosophy where I discovered a passion for problem-solving, logic and creative thinking. My interest in problem solving and logic led me to software development and I made the decision to study at Enspiral Dev Academy where I learnt the foundations of web development.