Software Architecture Insights

Why I Wrote The Software Conductor

Why I Wrote The Software Conductor

I started writing this book three times.

The first two attempts were what I thought a software architecture book was supposed to be. Frameworks. Diagrams. Bulleted lists explaining the difference between a developer and an architect. Sections with titles like “Characteristics of Effective Architecture Practice.” The book was technically correct. It was also completely lifeless.

I called the publisher and canceled the contract. That was three years ago.

The reason it was lifeless took me a while to understand. I had been trying to teach architecture the way I once tried to lead it. I wrote like I was in the front of the room, with diagrams, announcing the answer. I was writing a dictation manual dressed up as a career guide. And the hardest thing about becoming a software architect has nothing to do with being able to dictate well.

The hardest part is learning to see your job differently.

What Nobody Tells You About the Transition

Here’s the thing that doesn’t show up in job descriptions or architecture certification programs: the skills that make someone a great software developer are, in important ways, the wrong skills for software architecture work.

Great developers are great because they’re fast, focused, and decisive within a defined scope. They dive deep into a problem. They produce working code. They own their section of the system.

When that person gets promoted to architect, they usually try to do the same thing at scale. They try to understand every component deeply. They try to own every significant decision. They become the person the team waits for, escalates to, depends on. They go from being the best player on the team to being the bottleneck of the team, and for a long time they don’t understand why, because they’re working harder than they ever did before.

I’ve watched this happen dozens of times over thirty-some years working in software, across companies large and small. I’ve done it myself. The transition from developer to architect isn’t a technical challenge. It’s a mental one. You have to stop measuring your contribution by how much you build and start measuring it by how well you create the conditions for others to build well.

That is genuinely hard to teach in bullet points.

Why a Story

So I tried writing the book a third time, and what came out was a story.

The Software Conductor follows Aaron, a developer who wants to become an architect but doesn’t quite know how, and Anton, an orchestra conductor who becomes an unlikely mentor. Anton teaches Aaron what leadership looks like when you’re responsible for what others create, rather than what you create yourself. This is the lesson I hope I also teach to the readers.

I chose the orchestra metaphor deliberately, and it’s a metaphor I’ve been using for many years. A conductor doesn’t play every instrument. More precisely, a great conductor doesn’t try to. The conductor sets the tempo, shapes the phrasing, creates the conditions in which fifty musicians can find one coherent sound together. And then they step back and let the musicians play.

The conductor doesn’t play a single note, yet they are responsible for the beautiful sound that comes out of the orchestra.

That’s the architectural role, clearly described. It’s harmony, not heroics.

The narrative format isn’t decoration. The lessons in this book are the kind of lessons that land best through story. They’re about a shift in how you see yourself and your work. That shift is easier to trace through a character living it than through a framework explaining it.

Who This Book Is For

I wrote The Software Conductor for three groups of people, and I want to be honest about that because the right book for you depends on where you are.

The first group is senior developers who are wondering whether architecture is where they want to go, and what that transition would actually involve. The book won’t tell you it’s easy, because it isn’t. But it will give you an honest picture of what the work is. The real work, not the job description version.

The second group is newer architects who are pretty sure they’re doing it wrong. The instinct to stay close to the code, to solve every problem yourself, to be the hero who saves the sprint. Aaron spends a significant portion of this book fighting it. If you recognize yourself in that struggle, this book is written for you.

The third group is engineering leaders who hire architects and want to understand what they’re actually looking for. The gap between what a great architect does and what a great developer does is significant and often invisible until something goes wrong. This book makes it visible.

What I Hope You Take From It

After thirty-some years in this field, the thing I’m most confident about is this. The best architects I’ve worked with weren’t the ones who knew the most or made the most decisions. The best architects were the ones who built the most capable teams around them. They created conditions where good decisions happened more often, and where the system could keep improving even when the architect wasn’t in the room.

…even when the architect wasn’t in the room…

That’s not a soft skill, but it is a critical skill. And it’s the skill this book is trying to develop.

If you’ve felt there’s more to this craft than building features, there is. The Software Conductor is my attempt to describe what that “more” actually looks like.


The Software Conductor: A Journey of Discovery from Software Developer to Architect is available now in paperback, hardcover, and ebook. Get your copy here.