Home

I build across six domains that rarely turn up in one engineer: embedded firmware, PCB design, backend services, database architecture, full-stack web, and AI tooling.

I own a commercial fuel and fleet management product line end to end — the circuit board, the firmware on it, the protocol it speaks, the database behind it, and the reporting layer people actually use. Several hundred sites across Australia run on it.

Most of my attention right now is on WebFMS, a ground-up Go and PostgreSQL replacement for a platform that has run on Microsoft Access and VB6 for three decades. The interesting problem is not the greenfield part. It is that the field hardware is fixed and the sites never stop dispensing fuel, so the new system accommodates the old protocol, never the reverse.

The thread through all of it is bridging old and new: MCP servers that let LLMs query Access97 databases, serial device protocols carried onto TCP/IP after a carrier stranded ninety sites, VB6 kept alive in production while its replacement gets built in Go.

Away from work I write embedded Go — most recently luckfox-ui, a touchscreen dashboard for the Luckfox Pico that drives the Linux framebuffer and evdev touchscreen through raw ioctls, CGO disabled, standard library only.

I started out installing and commissioning these systems on customer sites. That is still the most useful thing on my CV — it is hard to design a good industrial product if you have never had to service one in the rain.

View my CV · Projects · GitHub · LinkedIn