Blog

You can find my latest AI engineering articles on Substack, leadership on LeadDev, or browse my topic guides and personal blog posts below.

Personal Blog

AI-Assisted Engineering: My 2025 Substack Recap

AI-Assisted Engineering: My 2025 Substack Recap

A recap of my latest Substack articles exploring the evolving intersection of AI and software engineering, from coding with agents to thinking about the future of programming it...

Service Reliability Mathematics

Service Reliability Mathematics

Service reliability is often reduced to a simple percentage but the reality is far more nuanced than those decimal points suggest. Lets explore what these numbers actually mean.

Effective Engineering Teams

Effective Engineering Teams

tl;dr: Google research found that psychological safety is the most important dynamic for an effective team. This was alongside other dynamics like dependability, role clarity, m...

Effective Code Reviews

Effective Code Reviews

A well-conducted code review is an opportunity for both the author and the reviewer to learn, share knowledge, and contribute to the overall quality of the software. They are ou...

Don't expect to be motivated everyday

Don't expect to be motivated everyday

“Don’t expect to be motivated everyday to get out there and make things happen. You won’t be. Don’t count on motivation. Count on Discipline.” - Jocko Willink

Unhealthy conflict vs. healthy conflict

Unhealthy conflict vs. healthy conflict

Conflict is an inevitable part of life. Be it within a family, between friends, or in a workplace, disagreements and differences in perspective will always arise. However, confl...

Substack

LeadDev

Managing the chaos of context switching

It's time to examine the good, the bad, and the very ugly elements of context switching. Even better, we'll take a look at some strategies for managing it.

What makes an effective software engineer?

Being a good software engineer is not necessarily the same as being an effective one. Here, Google's Addy Osmani identifies the ten key traits of effective software engineers.