技术团队的建设和培养
技术战略的执行靠的自然是技术人才。技术团队的建设和培养是要靠中层技术管理人员来完成的,任何成功的中层技术管理人员必然有自己的技术班子。但如何扯起这么一个班子,是很见水平的。前面说过,中层技术管理需要负责战略执行,而要执行战略不比做一两个具体交付任务,其复杂和未知程度要远远高出许多。
在未来时态下建设和培养技术团队。这是中层技术管理人员对于自己负责业务的理解深度决定的。例如,如果负责一个手游产品,而游戏的题材并非局限于只能在手机上玩,要从一开 始组织团队时就考虑游戏转型的可能,有意识地积累一些在PC游戏端和页游方面有一定经验的人手,并在游戏策划和技术实现时尽可能不要把一切都绑定在手机平 台这个假设上。这样,一旦产品真的要转到别的平台上去,技术团队就不会感觉非做伤筋动骨的调整才能服务于全新的战略了。在工作一成不变时,加强相关领域的 学习,往往会在战略突然发生剧烈调整时收到极高的回报。合格的中层技术管理人员,永远会在思考这样的问题:我未来可能会要执行什么技术战略,我现在的团队 能够应对吗?如果不能,我还差哪些方面?差的这些方面,是必须引入新人,还是要现有人员学习和培训?这样,在团队建设的每一时刻,都是有逻辑的,至少不会失控。而在引入团队新成员时,也自然而然地会把人的潜力、人的学习意愿纳入考量,而不仅是现在拥有的技术和经验作为唯一的考察因素。
要为技术团队大胆引入多种人才。很多技术团队面临的大问题,不是成员太不会干活了,而是太会干活了——他们是如此地会干活,以至于连要干什么都搞不清了。技术团队里面,一定要有润滑剂这样的角色,他们的任务不是直接产出工作量,而是让所有人都能够明白自己每天工作的意义所在,以及各项工作应该分配的比重,甚至工作之外还有什么可以适当调节一下身心的乐趣。这样的工作并不一定非要专职的人来做,但在引入新人时,不妨可以从性格和业余爱好等诸多方面综合考虑一下,尽 可能地让技术团队里配置多种多样的人,而不是所有人都一副面孔。这样做的目的,是为了提高技术团队的韧性,在受到压力时,不至于由于某个方面的刚性因子过大而让整个团队一起垮碎。
要敢于与其他技术团队互通有无,不要让团队跟自己的姓。有不少中层技术管理人员舍不得自己培养出来的团队,尤其是 核心人员,走到哪里都带着。抛开离职时带走人员的职业道德问题不谈,这样做有很多弊端。首先,这样的做法剥夺了别人拥有独立发展空间的权利,为什么别人要 永远在你手下做你的二把手?我就对此有深刻的体会,我从某公司离职去了下一家,然后过了半年以后又和我原先的一个下属吃饭。在谈到我们过去一起做的业务 时,我发现他的进步简直大得让我吃惊:这个原先几乎事事要问我意见的人,在我离开放手让他独立经营的半年之间,已经有了极好的独立性,不仅能战斗而且能指 挥了。从此以后,我就下定决心,自己培养出来的技术团队,就在原地服务,一个人都不带走。其次,有些人只要由于业务调整要把自己培养的人调走,或是要把自己不熟悉的人调入,就各种不开心,觉得不公平。中层技术管理人员应该超越这种小家子气,要反过来看这个问题:自己培养的人去了别的地方,等于是要播撒自己 的管理理念。而别的团队,甚至是在内部竞争中位于对抗地位的团队如果派人到自己团队里面来,这也正是一个学习的机会。
有一次,在我带的手机 测试部门里,就被安排接收了几个做手机客服的同事。结果,我发起了几次内部培训,让他们给我们讲手机客户都投诉什么,用我们团队成员的话说,“这比在实验室里关门做一年实验都要生动、具体”。反过来,我们给他们讲手机各个部件的测试原理和方法,他们和过去的同事交流时,也发现把这些内容融入客户支持材料比背几套问答模板要有用多了。结果,过了四个月他们收到要调回原部门的意向时,竟然都表示不愿意走了。于是,我趁机组织了一个“手机测试和客服部门沟通例会”,自此我们团队的测试效率明显提高,而客服团队收到投诉率明显降低。一年不到的时间里,我们两个团队都成了公司的明星团队。
中层技术管理人员的自我修养
中层管理阶段是每个技术管理人员都要好好把握的。原因有三。
首先,中层管理是个极其关键的跳板,从管理科学的角度来看,直接管理的人数一般不宜超过7人,就算管理能力超强算10人,中层管理所带领的团队一般都大大超过这个数字。所以,从管理分类的角度来看,中层管理是接触和学习间接管理的重要阶段。而掌握了间接管理的要素,实质上从管理的日常实务来看就没有什么新鲜的东西了——管20个人要这样管,管两万个人还是要这样管:实际上就是要管理你直接指挥的那7到10个人,然后把管理任务递归地落实下去。
其次,无论愿不愿意承认,中层管理对绝大多数管理人员来说都是职业生涯的最后一站,是要做到退休的。升到高层管理职位,不仅要靠实力和成绩,还取决于太多偶然因素构成的综合机遇。所以从这个阶段开始,要准备长期的磨练甚至反复。
再次,中层管理的职业生涯的时间阶段往往和人生进入成熟期的经历是重合的,对于技术管理人员来说,是自己的技术积累逐渐转化为个人解决问题思路的深化、对于复杂局面的判断以及管理风格的形成这些无价特性的关键时期。
那么,中层技术管理人员应该着意锻炼自己的哪些素质,为新的机遇和挑战做好准备呢?
首 先,中层技术管理人员应该摆脱幻想,习惯于把工作的基础建立在收集信息和反复分析之上。促成了这个要求的,还是工作的长期性和复杂性。例如,某个产品的返 回状态信息里面有一个拼写错误,是不是直接在代码里改一下然后重新部署一下就可以了呢?基层开发经理可以这么想、这么做,但如果是中层部门经理就不能这么 轻率。如果仔细收集信息就会发现,这个返回状态有大量的关联测试代码,只要修改了就会引发大量的测试脚本阻塞,连带着停止部署流水线,修复所有问题的时间 会造成错过运营上线的排期。所有的这些信息,都是一点一点从各个不同的基层经理甚至一线程序员那里报告回来的,最终才能做出正确的判断:这个问题应该修复,但要考虑到回归测试用例的修改时间,以及排期提前量,而客户并未就此拼写问题提出任何抱怨,所以优先级应该排到较低的级别。
这样的问题,可以说在中层管理人员这里还算是最简单的一类,属于有明确答案的技术问题。那么,要判定一个快量产的机型的某个硬件组件是否应该更换型号或供应商,一 个已经有上万名用户的函数库是否应该合并某个提高特定场景性能但会引发重新编译的实现,这些问题其实没有正确答案,只有反复权衡。更有甚者,某个技术人员 是应该由于某次贡献加薪,还是一次性奖励?某个面试者解题的路子很野,但答案居然是对的,要不要发offer?这些就更加棘手,需要收集的信息更多、渠道 也更需要广些。中层技术管理人员处理信息的一般原则应该是花费尽可能长的时间收集和分析信息,而将输出信息的时刻尽可能延迟。一定要记住技术规律是没有什么侥幸空间存在的,人心更是复杂多变。知之为知之,不知为不知。只要是不知道的信息,就是凭空想象出来的。以一个人的力量想知道所有的细节是非常困难的, 需要持续投入时间和精力。但具体到每一个技术决定,需要掌握的信息则是有限的,尽管不能知道所有需要的信息也是在所难免。此时,就要尽可能地降低凭空想象 来做决定的成分。所以,晚一秒钟做出决定,就多一秒钟来收集和分析信息,就少一分凭空想象造成错误决定的风险。
其次,每个中层技术管理人员 都要锻炼自己的技术表达能力,要能够把涉及多于10个技术要素、相关人等、人与事的关系、人与人的关系和事物发展的逻辑等来龙去脉讲得一清二楚、井井有 条。并且,要讲得通俗易懂,要让只有5分钟耐心的、和要讲述的内容毫无关系之人都能听懂,最好能被打动。这一点,是非常关键的。我参与过多次年度汇报,大 量的中层管理人员做的汇报都有较大的改进空间。讲了半天,除了他和自己团队感动了,别人都还是一脸茫然。其实,别人能看到你做的工作,就是你能讲明白的那 部分工作。说到底,这不是临时抱得了的佛脚。没有执行到位的工作,任何人都编不出可信的故事,而且几个简单的问题就马上要露马脚了。可是,如果自己的辛勤 工作要为蹩脚的表达买单,对于大多数中层管理人员而言,也就意味着上升通道就此关闭了。
用服务的心态为自己定位,用培养的手段为企业纳才, 不放弃任何管理创新的机会,锻炼快听、多想、慢说、表达到位的职业素养,这是中层技术管理人员不断成熟的诀窍。要做到这些,离不开中层技术管理对于技术的敬畏,和不断的技术学习。在本刊9月期《技术团队新官上任之基层篇》一文中,我曾说过,技术行业是一种终身职业,一旦入行,就要学习终身。这一点同样也适用于中层技术管理人员。停止学习,就意味着职业生涯的死亡,这决非危言耸听。下一期,我们将和自己创办企业,以及受到机会女神眷顾,成功晋升到技术高层管理职位的同学们分享更多更精彩的内容,欢迎阅读和反馈。
作者高博,EMC中国卓越研发集团首席工程师,交付项目有移动设备和应用平台、以云存储和云计算为基础的在线企业备份系统。新浪微博:@但以理_高博
技术团队新官上任之基层篇 http://www.csdn.net/article/2013-08-27/2816724
本文为《程序员》原创文章,未经允许不得转载,如需转载请联系market#csdn.net(#换成@)