Managing Humans: Biting and Humorous Tales of a Software Engineering Manager
Rate it:
20%
Flag icon
when communications are down, listen hard, repeat everything, and assume nothing. The Wallace situation was the first of many Falls, and the beginning of my understanding something fundamental to making future Falls less catastrophic: that people are the best puzzles you’ll never solve.
22%
Flag icon
I’m convinced that the majority of meetings on this planet go long and do little because the people sitting around the table simply do not figure out who the hell they’re talking to and what they want.
22%
Flag icon
You’ve got a meeting in mind, some horrible meeting where the issue is so complex that there’s no way the simple identification process I described could apply. Wrong. You’re jumping to solve the issue and that’s where everyone fucks this up. Who cares about the issue? Do you know who matters in whatever horrible meeting you’re sitting in? Did you take the time to identify the people who actually care—the ones who can make a difference? If you didn’t, you deserve every useless minute of that meeting.
22%
Flag icon
Meetings are always going to be inefficient because language is hard.
22%
Flag icon
Engineering was in the process of discussing some drastic new directions for our products, and the incrementalists (ship it soon!) were doing battle with the completionists (ship it when it’s done!). Tensions were high. There was finger pointing, yelling … all the things you aren’t supposed to do in business, but they feel so good when you know you’re right.
23%
Flag icon
Rule of thumb: When the debate is no longer productive, it’s time to make a decision.
23%
Flag icon
My management style is to allow the team to argue as long as possible. I’ve got a collaborative management style because I know that the more brains and more time the team spends staring at an idea, the stronger the idea becomes. This means that decision-making in groups that I manage tends to be slower because I’m busy cross-pollinating. Consequently, I’m certain it means our output is higher quality because we’ve taken the time to consider what the hell we’re doing.
23%
Flag icon
A good sign of poor mandate delivery is when the delivery degrades into another debate of the issues.
23%
Flag icon
The team has got to leave the room knowing the decision has been made. They don’t have to like it, they may hate it, but they can’t leave the room thinking there’s wiggle room in what you decided.
28%
Flag icon
managers are hubs of communication. (See Chapter 11.) The better they communicate across these sphere boundaries, the more people they can communicate with, and the more data they have. This consequently leads to better decisionmaking.
28%
Flag icon
Ultimately, stronger communicators make more informed decisions, and hopefully they are more successful because they waste less time wondering what to do.
29%
Flag icon
How you will be judged as a manager by your team is based on how you communicate with them. That’s not just about taking the time to have that quarterly all-hands, it’s also understanding what they need to hear and being able to say it in a way they’ll understand.
34%
Flag icon
Code lives forever. Good code not only lives, it grows as those who value it make sure that it doesn’t become stale. It’s this pile of high-value, well-maintained code that is helping shrink the average size of the engineering team because it’s allowing us to focus less on writing new code and more on integrating existing code to get the job done with fewer people and in less time.
38%
Flag icon
Saying no is saying “stop,” and in a valley full of people who thrive on endless movement, the ability to strategically choose when it’s time to stop is the sign of a manager willing to defy convention.