刚进Facebook做工程师的时候,我非常享受那种日夜泡在码海中的感觉。后来慢慢的承担的项目责任越来越大越来越多,写代码的时间越来越少(但绝大多数时候仍占大头)。有时候更多的是把时间花在决定产品的方向和设计上。很多事情是和产品经理设计人员一起搞的。但在Facebook攻城狮们有很大的发言权甚至有些时候是拍板的权力。Facebook希望攻城狮们有王者风范。Facebook希望攻城狮能决定自己要做什么应该做什么,而不是总是”被决定”做什么(一种流行的说法是,write your own job description)。因此,我花了大量的时间在思考这些问题–哪些功能需要添加,哪些功能需要删掉,需要开始或停掉哪些测试,我们正在流血流汗的是不是现在最最最重要的问题,我们是该花时间优化用户交互流程呢,还是减少出错率,还是让系统更快,等等。这些问题很伤脑筋,答案经常不确定,比一个劲码到手抽筋要难。但这些问题很重要,甚至可能决定了你熬的日日夜夜究竟有没有必要。建议所有的攻城狮思考思考代码之外的这些问题,团队领导者就更有必要了。当然,攻城狮的大多数时间还是应该花在代码上。
会议。开会太容易变成一群人互相在扯对方的蛋。浪费时间而且开完后发现没有结论且很蛋疼。但开会对于teamwork很多时候是必要的。如何主持会议是门学问,这里不细谈。不过,你不可能也不需要参加每个邀请你的会议。当你认为你参加某会议于己于人都无太多价值的时候,建议你考虑不去。如果想要有礼貌一点,那就写个email问问主持人你是否可以缺席。通常当你想过这个问题决定发这样的邮件时,答案通常都会是yes。有些时候我也会很可耻的让我的产品经理替我去开会。当然,我会鼓励他也争取不要去。Only make the meetings you really have to。同样,我要求我自己的团队在组织和参加会议的时候要慎重,也经常问他们想想看自己花在会议上的时间是不是多了。一个做法是把可能的会议都整合在一起。有一个例子。早些时候,我们会经常收到来自支持团队的比较随意的会面请求。这让攻城狮的一天被会议分割得支离破碎。写代码的都知道没有3-4个小时的连续时间是不容易高潮的。而且这种会议通常效率很低。于是,我们改变了做法,每周安排固定的答疑时间(office hour)和支持团队嗑想法然后follow up。当然,紧急的问题另当别论应当马上处理。
有一个被经常忽略的原则–有意识地去思考哪些事情不应该做并且马上不做。例如,哪些是无谓的争论可以避免介入(比如韩寒和方舟子的–个人意见),哪些功能可以放弃,哪些关系不应该发展,哪些人应该开掉,等等。我经常问自己一个很简单的问题,我现在正在做的是否对我的目标很重要。如果你清楚自己正在做的和自己想要的,答案会明了。Go for it。
如何有效传递整理好的意见也很重要。有句话是说“it’s not what you say that matters, it’s how you say it”。我没那么极端,我觉得如何传递意见也同样重要。有两种方式我都试过,不确定哪种更有效。这里都谈一谈。一种是以问为主逐渐深入促其思考,比如“how did you think about the meeting you hosted yesterday”;另外一种是赤裸裸的直入主题,“hey, let’s talk about the meeting you held yesterday”,然后开始谈我自己的感觉。不管哪种方式,一定要给对方一个解释自己行为的机会;永远假设并告诉他我相信他的意愿是好的。为了避免陷入”你昨天做了xxx”“没有,我做的是yyy”“我觉你是做了xxx”的死循环式的争论,我首先争取和他们在”我们感知的即是事实”这一点上达成共识。基于这点前提,我们把讨论的重点放在如何做能改变别人的感受最后让事情能顺利完成,毕竟大多数重要的事都有很多人一同协作完成。当他们认识到自己想要改进某个方面的时候,如何改是一个相对容易很多的问题–聪明人一向能够找出改进的办法,我所做的就是配合他们做头脑风暴。最终谈话的目的是产生一个下次如何能做的更好的具体方案。
关于有效传递意见反馈,另有4点提一下。
(1)意见反馈不见得都是负面的。 它可以是别人的一个长处。 你很欣赏。 你希望他这方面坚持做, 做得更多。 比如一句”hey, I really love your weekly summary email with the key metrics at the top。 Please keep them coming”可能产生很好的激励效果。
(2)意见反馈必须摆事实和讲道理。 如果你只是告诉别人他很烂, 但不说什么时候浪过了以及为什么, 除了给他添点火气之外无他用。 所以我在相关人员包括自己写意见反馈的时候要求提供实例。 比如一句 “I think he could make meetings transparent and shorter by having an agenda, like the weekly data review meeting on last Friday”比”his meeting is too long”更有血有肉有效。
(3)意见反馈必须是可操作的。 让人无从下手的意见意义不大。 如果在提意见的同时提出一个方案以供参考就有意义的多。 但注意, 绝不能是命令的方式 (那是中青宝...)。 比如前面的例子“I think he could make meetings transparent and shorter by having an agenda sent ahead of time...”就很容易操作。