2020年/02月/09日
44条工程管理经验
Do
Attract, nurture, coach, and retain talent. Talk to engineers to tease out concerns early, then fix them if you can.
Communicate to every engineer the next most important issue for them to work on.
Be the tiebreaker when the development team can’t reach consensus.
Be the information hub. Know what every engineer is working on, and help connect the dots that wouldn’t otherwise get connected.
Provide administrative support. Schedule issues, coordinate releases, and make sure the bureaucratic machine keeps ticking.
Enforce behavioral and performance standards. Fire bullies and underperformers.
需要做的
-
吸引,培养和留住人才。与工程师交流,尽快整理出问题,然后尽可能的解决这些问题。
-
和每个工程师沟通,了解他们紧接着要处理的最重要的问题是什么。
-
当开发团队之间无法达成共识时,站出来成为最后的决定者。
-
成为信息中心。了解每个工程师在做什么,尽可能的连接团队里的每个人。
-
提供行政支持。安排问题,协调发布,确保官僚体系能够正常运转。
-
执行行为和绩效标准。开除行为恶劣及表现不佳的员工。
Don’t
Personally fix bugs and ship features. You have to write code to remain an effective tiebreaker, but that’s where your coding responsibilities end.
Supervise the quality and volume of people’s work. Software engineering isn’t an assembly line. If you find yourself supervising too often, you haven’t attracted the right people or given them the right incentives.
尽量避免
-
一个人埋头处理问题并强行制定规则。当你不得不写下一些准则来保证高效的工程开发,这恰恰就是你制定规则权力的终结。
-
监督员工的工作质量和数量。软件工程不是装配线。如果你发现自己经常监督,那仅仅是因为你没有吸引到合适的人才,并给予他们正确的激励。
Motivation and culture
You’re the one who makes hiring and firing decisions. Everything that happens on your team is your responsibility.
Engineering is a seller’s market: people work for you because they believe in you. Access to their talent is a privilege.
Authority isn’t bestowed freely. It’s earned by making good decisions over time.
Don’t make decisions unless you have to. Whenever possible, allow the team to explore ideas and make decisions on its own.
Do make decisions when it’s necessary. Few things are as demoralizing as a stalled team.
Don’t shoot down ideas until it’s necessary. Create an environment where everyone feels safe to share and explore ideas. The folks writing the code have a lot of information you don’t. Rely on your team and you’ll make better decisions.
Building intuition on how to make good decisions and cultivating a great relationship with your team will get you 95% of the way there. The plethora of conceptual frameworks for organizing engineering teams won’t make much difference. They make good managers slightly better and bad managers slightly worse.
动机和文化
-
你是招聘和决定的人。您的团队发生的一切都是您的责任。
-
工程是卖方市场:人们为你工作,因为他们相信你。获取他们的才华是你的一种特权。
-
权威不是随便就能获得的。它是随着时间的推移,在不断做出正确决定的过程中积累出来的。
-
不到万不得已,千万不要做决定。尽可能让团队自己探索想法并作出决定。
-
做必要的决定。几乎没有东西能够比一个无法取得突破的团队还要沮丧。
-
不要随便否定一个想法。创造一个每个人都觉得能安全共享和探索想法的环境。写代码的员工有很多你不了解的想法。依靠你的团队,你会做出更好的决断。
-
建立起关于如何做出良好决定的直觉,这种直觉95%是来自于你和团队的良好关系。多如牛毛的概念框架在如何管理工程团队上并没有太大作用。它们仅仅是让优秀的管理者更优秀,糟糕的管理者更糟糕。
Emotions and people
Management happens to be prestigious in our culture, but it’s a skill like any other. Prestige is a distraction — it’s fickle and arbitrary. Guard against believing you’re any better than anyone else. The sooner you get over prestige, the sooner you can focus on doing your job well.
Management also attracts scorn. Ignore it — the people who believe managers are useless don’t understand the dynamics of building a winning human organization.
If you feel something’s wrong, you’re probably right. Don’t let anyone bully you into ignoring your feelings.
If you find yourself blaming someone, you’re probably wrong. Nobody wakes up and tries to do a bad job. 95% of the time you can resolve your feelings by just talking to people.
Most people won’t easily share their emotions. Have frequent informal conversations, and tease out everything that might be wrong. Then fix it if you can.
Your team looks to you for leadership. Have the courage to say what everyone knows to be true but isn’t saying.
You’re paid to discover and fix cultural problems your team may not be aware of. Have the courage to say what everyone should know but doesn’t.
Hire great people, then trust them completely. Evaluate performance on monthly or quarterly basis, then fire if you have to. Don’t evaluate people daily, it will drive everyone (including you) insane.
Most intellectual arguments have strong emotional undercurrents. You’ll be dramatically more efficient once you learn to figure out what those are.
情绪和人的管理
-
就像其他的技能一样,在我们的日常文化中,管理常常伴随着威望。威望容易让人分心,它常常伴随着决断的轻率和随意。越早跳出威望的陷阱,你就越能专注于自己的工作。
-
管理活动也常常招致鄙视。你要做的就是忽略它 ,因为一般认为管理者是无用的人,压根就不了解怎样创建一个成功的人类组织。
-
一旦你觉得有问题,你可能是对的。你要做的是避免受外界事物的干扰,不忽略你的感受。
-
如果你发现自己正在指责某人,你也有可能做错了。没有人早上醒来就准备把事情搞砸。大多数时候你能通过与人交流感受解决问题。
-
大多数人不会轻易分享他们的情绪。和员工多进行些非正式的谈话,梳理工作中可能出错的地方。然后尽可能的修复它。
-
你的团队期待你的领导。你应该有勇气站出来说出一些员工不敢说的东西。
-
发现和解决你的团队不太注意的文化问题是值得的。敢于说出每个人都应该知道但实际上他们不知道的一些文化习俗。
-
雇用行业大牛,并且完全信任他们。按季度或月来评估员工表现,迫不得己可以开除员工。不要每天都评估员工表现,这会让你和他人都会疯掉的。
-
大多数智力活动都受潜意识里情绪的干扰。一旦你清楚这些东西,你的管理将会更加高效。
Tiebreaking and conflict
Don’t judge too quickly; you’re right less often than you think. Even if you’re sure you’re right in any given case, wait until everyone’s opinion is heard.
Once everyone is heard, summarize all points of view so clearly that people say “Thanks, I wish I’d thought of putting it that way.” List any points of agreement with each view, and state what you’ve learned from everyone. Then make your decision.
Once you’ve made your decision, enforce it. Don’t let the team waste time going in circles to placate disproportionally strong voices.
Reopen the discussion if there is significant new information.
When disagreement gets personal or people don’t accept well-reasoned decisions, it turns into conflict.
Most conflict happens because people don’t feel heard. Sit down with each person and ask them how they feel. Listen carefully. Then ask again. And again. Then summarize what they said back to them. Most of the time that will solve the problem.
If the conflict persists after you’ve gone to reasonable lengths to hear everyone out and fix problems, it’s time for a difficult conversation.
应对打击和冲突
-
不要太快做判断,你远没你想象的知道的多。即便你确定你是完全正确的,也请你听完所有人的意见。
-
在听完所有人的意见之后,总结他们的观点,争取能让人们说出“谢谢,这正是我想要表达的做法”这样的话来。归纳大家相一致的意见,并说明你从每个人那里学到的东西。然后做出你的决定。
-
做出决定后,立马执行。不要让团队把时间浪费在安抚团队内少数持反对意见的人。
-
执行过程中,有重要新信息出现,重新召集成员讨论解决方案。
-
当碰到有人不接受这些有理有据的决定时,分歧就会演变成冲突。
-
大多数冲突的发生是因为人们感觉被忽视。所以你要坐下来问每一个成员的感受,认真听取他们的反馈,然后总结一下他们的回复,并向他们再三确认。大多数时候这样会解决问题。
-
如果你在合理的距离内听取了每个人的意见并处理了问题,冲突仍然存在,那么是时候开始一段艰难的谈话了。
Difficult conversations
Have difficult conversations as soon as possible. Waiting will only make a bad situation worse.
Never assume or jump to conclusions. Never demonize people in your mind. Never blame, yell or vilify.
Use non-violent communication — it’s the best method I know of to critique people’s behavior without offending them. It smells like a management fad, but it really works (I promise).
Have the courage to state how you feel and what you need. People are drawn to each other’s vulnerability but repelled by their own. Vulnerability isn’t weakness.
Expect people to extend you the same courtesy. If someone makes you feel bad for stating your needs and feelings, it tells you more about them than about yourself.
困难对话
-
尽快开启困难对话。等待只会使情况更糟。
-
不要假定或武断的下结论。不要在你心中妖魔化人。永远不要大声苛责,诽谤别人。
-
使用非暴力的沟通——这是我所知道的最好的方法来批评人们的行为,而不会冒犯他们。它看起来似乎像一个管理潮流,但真的很有用(我保证)。
-
有勇气说出你的感受和需要。人们因为表现出自己脆弱的一面而相互吸引,虽然这个做法是被自己排斥。但请记住脆弱性并不是弱点。
-
期待人们给予你同样的礼貌。当你陈述你的需要和感觉时,别人的反映让你感觉不舒服,这往往告诉你需要将关注点放在他们身上而不是你自己身上。
Rough edge
People will push and prod to discover your boundaries. Knowing when to stand back and when to stand firm is half the battle.
Occasionally someone will push too far. When they do, you have to show a rough edge or you’ll lose authority with your team.
A firm “I’m not ok with that” is usually enough.
Don’t laugh things off if you don’t feel like laughing them off. Have the courage to show your true emotions.
If you have to firmly say “I’m not ok with that” too many times to the same person, it’s your job to fire them.
Unless you’re a sociopath, firing people is so hard you’ll invent excuses not to do it. If you’re consistently wondering if someone’s a good fit for too long, have the courage to do what you know is right.
Don’t let people pressure you into decisions you don’t believe in. They’ll hold you responsible for them later, and they’ll be right. Decisions are your responsibility.
Believe in yourself. You can’t lead a cavalry charge if you think you look funny on a horse.
不可触碰的底线
-
人们会试图试探发现的你的底线。这时你只要知道什么时候该承担责任,什么时候该坚定想法就成功了一半。
-
偶尔有人会做得太过火了。当他们这样做时,你必须表明这个底线不能触碰,否则你将失去你在团队里的权威。
-
一个类似“你这样做,我感觉不舒服”这样坚定的回答通常就足够了。
-
如果你不喜欢他们的所作所为,那就别笑了。敢于表现出你的真实情感。
-
如果你总是对同一个人说“你这样做,我感觉不舒服”,那么是时候开除这个人了。
-
除非你是一个反社会的人,否则开除人就会很艰难,你会找借口说服自己不要这样做。如果你一直觉得某人并不适合这个岗位,就请你勇敢做你该做的事。
-
不要让外界压力迫使你做决定,外界会让你为你的决定负起相应的责任,他们做法无可厚非。自己做的决定就应该承担相应责任。
-
相信自己。如果连你自己都认为你在马上的姿态滑稽可笑,显然你是不能领导骑兵的。