Managing Humans is the upgrade to “Behind Closed Doors”. It has some brilliant perspectives and concepts that I think would be relevant to anyone involved in the management aspects of software development. While I feel on the whole the book is brilliant, it also has a few rough edges that felt like they were a bad fit. In particular, I struggled to get value from two sections “A Nerd in a Cave” and “NADD” which were probably better off being left out. With that said, it is a wealth of knowledge written in an easy to congest format. This type of book you read once cover to cover, and then periodically come back to as a reference manual every few months.
Sections & concepts that stood out to me:
Don’t Be a Prick : The underlying rule for all managers.
Your company health checklist
- Do you have a one-on-one?
- Do you have a team meeting?
- Do you have status reports?
- Can you say no to your boss?
- Can you explain the strategy of the company to a stranger?
- Can you explain the current state of business?
- Does the person in charge reguarly stand up in front of everyone and tell you what they are thinking? Are you buying it?
- Do you know what to do next? Does your boss?
- Do you have time to be strategic?
- Are you actively killing the Grapevine?
Some side notes to the above:
- Keep one-on-ones as a priority
- Keep team meetings at a consistent heartbeat
How to run a meeting
- Creation vs Alignment Meetings
- Meetings have 2 critical components: Agenda & Referee
- A meetings progress is measure by flow , referee’s job is to keep a meeting flowing
- Rule for everyone in a meeting is if your attention is elsewhere, you aren’t listening
- diving into solving a hard problem
- getting people to agree on a way forward
A referee should be aware of the following:
- Pull people back if they don’t look engaged
- If several people looked checked out, get them checked in
- Change scenery to get things going
The Monday Freakout
- Don’t participate in the freakout
- Give the freakout the benefit of the doubt
- End the preamble and start the actual conversations with questions
- Get people freaking out to solve their own problem
- People freaking out are people that care
- People freaking out is an indication you have not touched base with them enough
Disecting the Mandate
- Know what your role is and if you actually have a mandate
- Two types of mandates: Local & Foreign. Local is your mandate, Foreign is when a mandate is forced on you from outside of your level.
- Decide when to employ the mandate, be careful to not leverage the mandate unless you absolutely have to
- Decide, Deliver, Deliver Again: When you deliver a mandate, don’t assume it is going to be enacted on, deliver and deliver again.
- 3 outcomes from a mandate: Yay, Yawn or Boo
- Always make sure you have solid justification and reasoning when delivering a mandate, the fact you have to pull the card is an indicator is will be challenged
Subtlety, Subterfuge & Silence
Management is like chess. When you’re presented with a problem, you sometimes need to sit back and take a look at the board, figure out the consequences of each move, and most importantly pick a move.
3 types of moves you should be aware of: Subtlety, Subterfuge & Silence
Subtlety starts with humility. Exhibiting your power and knowledge as a manager isn’t always the best method of communicating. Sometimes your approach needs to start small, humble, and in a place where you admit you don’t have all the answers.
Subterfuge is a risk, You break trust with subterfuge. Sometimes it may be necessary, but be careful.
Silence. Sometimes it is best to be quiet and listen. When you are not sure where people are going with an idea or a chat, be quiet and listen.
Bored People Quit
You need to be able to answer 2 questions regarding each person on your team:
1) Where are they going?
2) What are you currently doing to get them there?
Engineers don’t like to get bored. Ways to avoid this:
1) Keep an interesting problem squarely in front of them
2) Let them experiment
3) Sometimes they have to do boring things, but they can only take one for the team for so long
Don’t promise productive and creative time and then take it away. This accelerates boredom.
Other things to do:
- Aggressively remove noise. Protect them from random meetings, phone calls, etc.
- Reguarly keep team members in the loop on what is going on