I’m an engineering leader with 25+ years building mission-critical systems and high-performing teams. My goal is to create teams where engineering excellence is not only possible but expected, built on a foundation of trust and honest communication.

My Journey

I got my start writing software on an Amstrad PC1512 in the late 80’s, and created my first publicly distributed project in 1996 - a utility for the video game Quake that found its way onto ftp.cdrom.com. After studying Computer Science at Monash University, I’ve spent my career in Melbourne building critical systems across diverse industries: PropTech at Domain Group where I’ve progressed through leadership roles with increasing scope, energy trading platforms at AGL, 24/7 operational systems for Melbourne’s metropolitan train services, government systems, and international food formulation platforms deployed to 9 countries. Throughout, I’ve focused on establishing operational and engineering excellence, improving delivery predictability, and developing technical leaders who can scale with the organization.

How I Lead

My job as a leader is to create the conditions for teams to do good work: clear priorities, genuine ownership, room to challenge decisions and the support to follow problems through properly. I care about what reaches the customer, whether it works reliably, and whether the team can keep improving it without burning out.

I hold myself to high standards of honesty and transparency in how I work with people. If I know something, I’ll say it; if I don’t, I’ll say that too. I address problems early, keep the commitments I make and hold myself to the same standards I expect from others. Trust comes from those repeated, everyday actions, not from declaring that a team has a high-trust culture.

How I Approach Engineering

  • Simple over complex - YAGNI and worse-is-better still resonate strongly with me
  • Prototype and iterate over extensive upfront design
  • Measured progress over faith-based execution - if you can’t measure it, you can’t improve it
  • Slow is smooth, smooth is fast - attention to detail and completing milestones properly before moving on beats rushing through with “close enough”
  • No broken windows - address problems immediately before they compound into bigger issues (“the quality you accept is the quality you get”)
  • Compounding over linear - focus on efforts that compound, not just one-time wins
  • Growth mindset - believing that capability can be developed through focus and learning, both for myself and the teams I build

Personal Projects

I use personal projects to stay close to the craft of engineering, experiment with new technologies and keep rediscovering the fun of building something from an idea. They give me a hands-on laboratory with a different set of constraints from those I encounter in larger organisations.

  • 2025–present — The Game Project: A video game collection and backlog tracker that grew from my own need to replace a spreadsheet I had maintained for ten years.
  • 2026 — mdtype: An open-source command-line utility for turning Markdown into polished, shareable PDFs.
  • 2010–2015 — On My Doorstep: A personal project I built and operated for five years.
  • 2009–2013 — Visural Wicket: An open-source UI component library for Apache Wicket.

Why Do I Blog?

I use this space to share projects, speaking engagements, and my thoughts on leadership and engineering topics. Writing helps me communicate my mental model of different ideas - which I can then share with people to start conversations. It’s a way to clarify my thinking and create shared context.

Come say hello on LinkedIn