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 excellence, improving delivery predictability, and developing technical leaders who can scale with the organization. Multiple people I’ve mentored have gone on to leadership roles themselves - one of the things I’m most proud of.
How I Lead
I believe engineering excellence isn’t just quality code - it’s predictability, operational maturity, and sustainable delivery. I focus on creating environments where teams can do their best work, guided by customer experience and measured outcomes rather than intuition. I encourage growth outside comfort zones and challenging the status quo, because that’s where the best solutions emerge. I’ve learned that addressing problems immediately - before they compound - saves far more time than it costs. And I prioritise actions that create long-term, compounding value over quick wins that don’t build capability for the future.
I hold myself to high standards of honesty and transparency in how I work with people. I show up genuinely in every interaction - I don’t manipulate, mislead, or misdirect. I believe any conflict can be worked through with honest communication, and I wouldn’t ask anyone to do something I’m not prepared to do myself. Trust is earned through consistent behavior, not declared through words.
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
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 complex ideas - particularly around leadership - which I can then share with people I work with to start conversations and align on approaches. It’s a way to clarify my thinking and create shared context with my teams.
Come say hello on LinkedIn