Colin Breck

Colin Breck
7/12/2026

I have been writing a series of essays on adapting software engineering to the widespread use of AI. My last essay focused on adapting organizations, designing them to be their most effective with AI. Because leadership is so critically important to the success of an organization, it might seem like an omission that I didn’t include a section on leadership, but the topic of leadership deserved an…

Of anything I’ve worked on in my career, performance work has been the most rewarding. I enjoy making systems more efficient, especially when it opens up brand new possibilities for customers. I also find developing an empirical understanding of systems is one of the best ways to learn how systems work from first principles, especially how complex systems interact, at scale, or under load. But on…

Dave Farley’s book Modern Software Engineering explores the question: Is software engineering real engineering? Farley’s conclusion is yes, when the work is performed by applying a set of broadly accepted and repeatable practices that scale and lead to quality outcomes. Unfortunately, a lot of software is developed, tested, and operated without following such disciplined practices. Farley categor…

This article is a companion to my talk Rust Is Not as Safe as You Think It Is: Improving Safety and Reliability in Rust. Rust is an increasingly popular systems programming language, partly due to the memory-safety guarantees enforced both at compile-time and at run-time. Memory safety is not enforced in unsafe Rust, but for an application developer like myself, the need to use unsafe Rust is exc…

There are significant changes happening in distributed systems. Object storage is becoming the database, tools for transactional processing and analytical processing are becoming one in the same, and there are new programming models that promise some combination of superior security, portability, management of application state, or simplification. These changes will influence how systems are oper…

At many companies, career progression is described by parallel engineering and management tracks. An engineer progresses by gaining more experience, addressing progressively more complex technical challenges, and having increasing influence over technical direction, architecture, technology trade-offs, quality, culture, and execution. Similarly, a manager progresses by supervising more people, ha…