About Me

19 Aug 2023

I’m a software engineer with a strong focus on back-end development, working primarily within the modern JavaScript ecosystem using Node.js and Bun. I use TypeScript and JSDoc to produce safe, maintainable, and correct code at scale, and I also have experience with Java, C#, Rust, and Python. My background includes designing, building, and maintaining relational databases with PostgreSQL and MariaDB, as well as containerising applications with Docker and implementing CI/CD pipelines using GitHub Actions.

On the front end, I work with React, React Router v7, and Next.js, styling with CSS, SCSS, and Tailwind, and using component libraries such as shadcn/ui to support accessible, well-structured interfaces. I also have experience with 3D modelling in Blender and game development using Rust and Java, which has strengthened my understanding of performance, graphics, and interactive systems.

Alongside software development, I am an experienced photographer with strong photo and video editing skills and a keen eye for visual design. I live on and maintain a narrowboat, which has given me practical, hands-on experience across many aspects of marine engineering, particularly electronic systems and their design. This has fostered a pragmatic, problem-solving mindset that I bring to all of my work. I also have a strong commitment to environmental protection, shaped by time spent on Britain’s waterways and a close connection to their natural habitats.

Explorer - An Open Geospatial Data Browser

5/12/2022

As part of my computing science degree, I created a mobile application to improve access to geospatial information on WikiData. This post describes the problem, my solution, and the results of its implementation.