About

Hey, I’m Matt - a Principal Engineer at AWS, living in Melbourne, Australia 馃嚘馃嚭. I build things and write up the bits worth keeping.
Lately, that’s mostly:
- Building tools in Python - Pydantic, PydanticAI, FastAPI, AWS Strands. Big on type safety, with AI agents doing the boring parts and a fair bit of agent orchestration.
- Playing with open-source LLMs - Qwen, GLM and friends, run locally on a Framework Desktop and a DGX Spark. Lately a lot of OCR and vision-model tinkering, just for the fun of it.
- A homelab for my tinkering - Raspberry Pis, an old Synology NAS, and a stack of Dell OptiPlex Micros, a Framework Desktop and a DGX Spark, all stitched together with Tailscale so I can reach them from anywhere, running a lot of containers with Docker Swarm and Portainer.
- Currently living in the terminal - Claude Code and Opus daily, Ghostty on the Mac with herdr inside it, and endlessly ricing my Linux and Claude Code configs.
- Making apps - Into Flutter lately, after plenty of Swift and React Native. Backends usually built with CDK on AWS.
- Talking about it - I speak at user groups and conferences like AWS re:Invent and PyCon AU, make the odd YouTube video, and used to host a stream called Devs in the Shed.
Day to day I ship software, thinking ahead to how it’ll hold up under load and the design patterns underneath it. Backends usually start as a FastAPI modular monolith, breaking out microservices only where something needs to scale.
coles.codes is a bit ironic as a name now, because I don’t type much of it myself: I spec the work out, prompt an AI, and edit what comes back, though I still write the odd bit artisanally.
Outside work I’m usually reading or gaming at home with my wife and our cats, and I take my coffee seriously - half these posts started over one.

Opinions here are my own, not my employer’s.