The Software Engineering Identity Crisis

Many of us became software engineers because we found our identity in building things. Not managing things. Not overseeing things. Building things. With our own hands, our own minds, our own code.

But that identity is being challenged.

AI coding assistants aren’t just changing how we write software - they’re fundamentally transforming who we are. We’re shifting from creators to orchestrators, from builders to overseers. From engineers to something that looks suspiciously like… managers.

Read more...

Rediscover the Power of Simplicity

In an era where tech stacks grow ever more complex and teams become increasingly specialised, there’s profound wisdom to be found in looking back at simpler, more effective approaches.

I’ve been meaning to write about my experience at Trade Me for years. Earlier this week, I attended the launch of Rowan Simpson’s new book, How to Be Wrong. Rowan hired me into his team at Trade Me back in 2006, and to my delight, I even earned a mention in his book! That unexpected recognition, along with recently reading this article about Trade Me’s journey toward a “thinnest viable platform”, finally motivated me to reflect on what remains one of my best professional experiences to this day.

Read more...

The SDLC Strikes Back: Adapting to AI-Driven Development

Earlier this year, Lovable celebrated their biggest milestone yet - more than 12,000 (!) new projects created in a single day. The very next day, they went down. The irony? Their success became their downfall. Each new project in Lovable requires a new GitHub repository, and this surge - thousands per day - put such strain on GitHub’s infrastructure that it risked affecting GitHub’s entire platform. Their on-call engineer had to make the difficult decision to suspend Lovable’s account, effectively blocking all users from creating or editing their projects.

Read more...

What It's Really Like Using an AI Coding Assistant

I’ve now spent a couple of months using Windsurf fairly regularly and I thought I’d share some of my experiences with it.

To set the scene, I’m a software engineer with over 20 years experience. I have a degree in Computer Science and Math and spent the first half of my career in hands-on individual contributor roles across 7 industries and 4 countries. I would generally describe myself as a C# .NET backend dev but I’ve built my fair share of frontends and even some mobile apps. I’ve hopped back and forth between management and engineering roles over the last decade. I haven’t written code as part of my day job for about 5 years now. I still enjoy building software myself and have plenty of grand ideas that I’d love to bring to life, but sadly it just takes too long.

Read more...

Agents All The Way Down

The concept of agentic AI absolutely fascinates me. An LLM on its own is already mind-blowing, but building much larger systems where hundreds of specialised LLMs work together as components, with yet another LLM orchestrating how it all works, is a whole other world. The possibilities for automation are endless.

At the end of the day, software systems are just components stitched together to perform seemingly complex tasks, but the logic behind it all is very deterministic. As software engineers, we write lines of code to tell computers to do very specific things, in very specific orders. The computer then executes those instructions in a deterministic way, and we’re left with a very predictable system that can be hard to change or adapt to new requirements.

Read more...

2024 In Review: Expanding Horizons

2024 was a massive year for me, and even that feels like an understatement. I pushed myself to my limits in many ways, but have enjoyed every second of it. After all, if you’re comfortable, you’re not growing, right?

My passion for continuous learning kicked into overdrive these past couple of years, leading me down fascinating intellectual paths. Could it be that AI has helped make information more accessible? Or is it that I’ve finally found my calling? I can’t really say for sure, but I’ve found myself deeply immersed in several interconnected domains:

Read more...

Dear Software Engineer: It's Time to Reclaim Your Role

Apologies, this is a long one - clearly I’ve got a lot to say on this subject!

It didn’t take long after ChatGPT was released for me to start seeing how fundamentally this technology could transform software engineering. Not just as another tool in our arsenal, but as something that could redefine what it means to be a software engineer entirely.

The discourse around this has been fascinating. Jump on LinkedIn or X and you’ll see endless debates about whether AI will augment or replace software engineers, whether it’s just another productivity tool or a paradigm shift, whether it’s overhyped or understated. But I think many are missing the real story - it’s not about whether AI will take our jobs, it’s about how it’s already changing the very nature of our profession.

Read more...

The Power of Defining the Problem

We live in an era where rapid solutions are celebrated. The quicker we solve a problem, the more productive we appear. But what if, in our rush to get to a resolution, we’re missing the mark entirely? Albert Einstein’s timeless quote, “If I were given one hour to save the planet, I would spend 59 minutes defining the problem and one minute resolving it”, resonates deeply in today’s fast-paced, technology-driven world.

Read more...