Managing Humans

Michael Lopp

https://slides.com/nickseegmiller

Biting and Humorous Tales of a Software Engineering Manager

Why read this?

"We all have managers, and whether you're a director of engineering or an individual contributor, one of your jobs is to figure your manager out."

Don't Be a Prick

"A great manager is someone with whom you can make a connection no matter where you sit in the organization chart."

Every single person a vastly different set of needs. Your job as a manager is to listen and document. The team does the work and your job is managing the team.

"In order to manage human beings in the moment, you've got to be one."

Managers Are Not Evil

"What, exactly, do you do?"

"Your manager's job is not your job."

"My manager has no idea what I do."

Has your manager done your job?

Learn how to speak their language.

Ask in an interview: "Where do you need help"

Managers must take their skills and make them scale.

Transform deficiencies into strengths by hiring well.

Communication and Trust

"You will always learn something in your one-on-one."

"Managers who don't have a plan to talk to everyone on their team regularly are deluded."

Real work is visible action managers take to support their vision for the organization. Does your manager do what they say they are going to do? Do they make something happen?

The Rands Test

1. Do you have a consistent 1:1 where you talk about topics other than status? (+1)

If you are irregularly doing one-on-ones or not making them valuable conversations, all you're doing is reinforcing the myth that managers are out of touch.

2. Do you have a consistent team meeting? (+1)

Standing agenda item of "gossip, rumors, and lies". If you're killing lies and fixing what's broken in a team meeting, give yourself a point.

3. Are handwritten status reports delivered weekly via email? (-1)

Other tools generate a significant amount of status. Emailed reports say one thing: "You don't value my time."

4. Are you comfortable saying "no" to your boss? (+1)

Is your 1:1 somehow different than other meeting you have during a week?

Leaders who think they're infallible slowly go insane with power created by the lie that being wrong is a weakness.

5. Can you explain the strategy of your company to a stranger? (+1)

It may not be your responsibility to define this map, but it's entirely your responsibility to understand it so you can measure it.

6. Can you tell me with some accuracy the state of the business? (+1)

Or go to someone somewhere and figure it out right now?

Your company is either growing or dying. Have a defensible opinion regarding the state of your business.

7. Is there a regular meeting where the person in charge gets up in front of everyone and tells you what they are thinking? (+1) Are you buying it? (+1)

Everyone should have access to that person, they should explain their vision, anyone should be able to ask a question.

8. Can you explain your career trajectory? (+1) Bonus: Can your boss(+1)

Can you, right in this moment, explain your next move?

Even a simple statement: "One day, I'd like to X"

9. Do you have a well-defined and protected time to be strategic? (+1)

Do you have time on your calendar where you are growing toward your goal? Are you investing in yourself at work? And is your boss cool about it?

10. Are you actively killing the Grapevine? (+1)

"In the absence of information, people make shit up."

Meetings and 1:1's are good, but only get you so far. You need to change the quality of the information wandering around.

How to run a meeting

A meeting has two critical components: an agenda and a referee

Agendas answer the question: how do I get out of this meeting so I can actually work?

Tips to keep people engaged: Pull them back. Reset the meeting with silence. Change the scenery.

If you are the referee, own it. Improvise when needed. Stay in control.

A successful meeting is that when the meeting is done, it need never occur again.

One-on-ones: Give the smallest voice a chance to be heard

  1. Hold a 1:1 at the same time each week
  2. Always do it
  3. Give it 30 minutes, at least

How are you?

  1. The update
  2. The vent
  3. The disaster

Three moves

  1. Prepared talking points
  2. Mini-performance review
  3. My current disaster

A disaster is the end result of poor management. If losing their shit seems productive, it's because they feel it's the only option left.

Listening

  1. Open with an innocuous preamble: How are you? What's up?
  2. Look them straight in the eye and don't look at the clock.
  3. Be a curious fool.
  4. Validate ambiguity, map their words to yours, and build gentle segues.
  5. Pause. Like, shut up.

If they don't trust you, they aren't going to say shit.

Maintaining an engineering mindset

  1. Use the development environment to build the product.
  2. Be able to draw a detailed architecture diagram describing your product on any whiteboard at any time.
  3. Own a feature.
  4. Write unit tests.

Don't ever stop developing.

How to start

  1. Your brain is smarter about thinking than you think
  2. Preparation, in its variety of forms, often gets a bad rap
  3. Stress is a creativity buzz kill

Just start. You've got a big task. Just start it.

Taking time to think

  1. Are decisions being made?
  2. Are decisions being revisited?
  3. Are decisions constantly being revisited?
  4. Are the players changing?
  5. Are basic truths about your design showing up?
  6. Is it therapy or work?
  7. Are holy shit moments occurring?
  8. Is the to-do list growing or shrinking?

Bored people quit

  1. Did their daily routine change?
  2. Just ask: "Are you bored?"
  3. They tell you. And you listen.

Are they bored?

  1. Where are they going?
  2. What are you currently doing to get them there?

Plan of Action

First 90 days (and beyond)

  1. Stay late, show up early
  2. Accept every lunch invitation you get
  3. Always ask about acronyms
  4. Say something really stupid
  5. Have a drink
  6. Tell someone what to do
  7. Have an argument
  8. Find your inner circle

Skill vs. Wil

Resignation Checklist

  1. Don't promise what you can't do
  2. Respect your network
  3. Update "The Crew"
  4. Don't take cheap shots
  5. Do right by those who work for you and with you
  6. Don't volunteer to do work after you leave
  7. Don't give too much notice

Managing Humans

By Nick Seegmiller

Managing Humans

  • 619