John Gatward

Backend engineer. Curious builder.

I build services, interactive experiments, and things my family actually uses.

Havox & me

John Gatward

Havox started in 2017 as a place to dump whatever projects I had written. Four redesigns and several dead domains later, it's still going. Less a portfolio, more a scrapbook.

Day job

Backend engineer at Sainsbury's Supply Chain & Logistics. It's good fun.

Always learning

Fascinated with new languages, frameworks, and shiny tech I probably don’t need. Constantly learning just enough to build something slightly cooler next time.

Off the clock

Long-time Linux user and distro-hopper. Self-hosted server running 24/7 for friends and family who didn't ask for it but probably definitely appreciate it.

What I know

Java

Backend

Professional experience designing, building and deploying services. Using a modern tech stack in the Supply Chain & Logistics industry.

Java Spring Boot AWS Kafka MongoDB
React

Frontend & Creative

Comfortable with React and CSS. I've always enjoyed visualising algorithms interactively - it's way more fun than a console output.

React TypeScript HTML/CSS
Docker

Systems & Infra

Long-term Linux & Vim user. Self-hosted web & media servers. Using industry practices when it comes to networks & security.

Linux Docker Self-Hosting Wireguard
Haskell

Academic Breadth

C, C++, x86_64 assembly, Haskell, R & MatLab from uni. Modules in Advanced networking, algorithms, compilers, graphics, cryptography, malware analysis & many more.

C / C++ Haskell Algorithms Security Low Level OS

Things I built

A timeline of my projects and an overview of my journey as a developer. Often inspired by something cool I saw and set out to recreate.

Featured projects

All projects

14 Nov 2024 Thin Ice Play game A small browser tile game inspired by one I played growing up. C++ WebAssembly Raylib
31 Jan 2024 Flocking Open visualiser Rewrote the project from Go to Rust, compiling it to WebAssembly. Was fun being able to use DOM controls to affect the simulation. Rust Raylib
21 Jul 2023 Game of Life Open simulator After building Conway's Game of Life in p5.js as one of my first projects, I expanded it into a generic automata simulator. React JavaScript
17 Sep 2021 2D Marching Squares Open generator I saw the 3D version of this algorithm in a game dev log and was inspired to create this 2D land-and-sea map generator. JavaScript p5.js

Let's talk

I am currently employed and open to the right software engineering opportunity, particularly backend or full-stack roles with friendly, close-knit teams.

For professional enquiries, connect with me on LinkedIn.