The specifics of this post are about software development — but the general lessons are about leadership and communication.

Last year was the first time in my 10 years as a software manager that I haven’t been upset at the pace of engineering on the engineering team.

Let me define upset: that feeling you have when you’re in a conversation and aren’t being understood.

For ten years, I’ve been trying to make the case for a higher pace of software development. And for ten years, the engineers I’ve worked with have been hearing my case as some variant of “just make it shitty.”

Lots of managers are in this situation too — it feels like you’re in an argument with your engineers that you don’t know how to get out of.

Who’s at fault? It doesn’t matter. Just know that you can get out of it.