EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
一、管理需要学习 我面试技术人员有一个必问的题:你将来五年或十年的职业目标是什么?就像《中国新歌声》里汪峰老是问:你的梦想是什么? 最多的答案是两个,一个是做管理岗位,一个是做技术专家,例如架构师。当然,其他各种答案也有,像做记者,回老家开农场等,但那总是少数。 接下来我会问,你计划怎么实现目标?做了点什么准备没有?很遗憾,大多数的回答是没有计划,也没有准备。 根据这些年我行走江湖的经验(倚老卖老样),很多已经走上研发管理岗位的人,包括我自己,也是一路上懵懵懂懂过来的。实践中,研发管理人员一般都是从研发技术转岗的,除了在学校软件工程课程上习得的一点项目管理常识,好的公司还会有一点管理速成培训,其他就靠自己了。有意无意中,大伙开初都是照着前任领导的样子来,有点师傅带徒弟的意思,不了解管理学理论是大面积状况。 情商也是个问题。我曾见过一个有好几年经验的研发领导,在一次和团队成员沟通时,无意暴露出一个技术知识盲点(请原谅我不能告诉你是哪一个盲点,以免当事人对号入座追杀我),团队里有人当场指出来,这位领导表情那个尴尬,红着脸一两分钟说不出话来。 - ]* j6 A) J* {1 K# G& \7 \# ^
其实,管理学是一门成熟的学科,研发管理也形成了多种风格多种模式供你选择。很多前人已在黑暗中摸索了一通,把发现的成果白纸黑字写好了,你可以很廉价地获取到这些知识。朋友圈一个兄弟说,他把团队管理实践中一些经验总结,凝练地记录下来,非常得意地以为这都是独特发现,有一天,他发现一本书,他总结的这些东西早就写在里面了,而且全面系统得多,这本书就是《组织行为学》。 5 s) c5 n5 R% x- O$ d4 Z6 D- N9 B
所以,多读书,多关注办公桌外面的人和事很重要。 * T/ k' n/ v H8 m. L/ C
二、管理者的角色 回到我们的主题,我们先看看管理者的角色如何定位。换句话说,管理者是干什么吃的? 享利·法约尔(Henri Fayol)是古典管理理论代表人物,他在1925年出版的《工业管理与一般管理》一书中提出,管理者的五种职能是计划、组织、指挥、协调和控制。 2015年,曼联传奇教练弗格森的《领导力》出版,弗格森自己总结其理念叫“始终如一”,其实就是在大的格局中和大的时间跨度中,一直盯紧目标,知道团队真正要的是什么。
8 e) _6 H5 Q G2 ]3 ^2 A: ?# v综合起来,我认为,管理者就是制定目标,盯着目标,并最坚定带领大家实现目标的人。 不要认为这很容易,当你一旦进入事务繁复的日常工作中,有很多力量,很多因素来影响你。部门、甚至每一个团队成员有自己的利益诉求,你的领导可能犹豫不决,你的团队在一个失败的打击下可能斗志全无。经历这些,你还能盯紧目标,坚定带领大家朝目标前行,那你对管理者的角色才应该是认识清楚了。 3 U% `- R9 P6 \6 x0 A) o
三、研发管理要做的事情 具体到研发管理。一般认为,研发管理分两块,一块是研发团队管理,一块是研发项目管理。这两块既有独立性又是相互结合的。团队为项目服务,项目反过来锻炼团队,每个项目有自己的目标,团队也有自己的目标,比如,培养各梯队人才,形成文化氛围等。 题外话,按现在一般公司的组织结构,产品管理是独立于研发管理之外的,产品管理面向市场,战略性较强,研发管理面向实现,执行性更强,产品与研发的关系更多类似于客户与供应商的关系。 本专栏仅讨论研发团队管理。 / I5 r. F9 I7 {1 x c
Scrum是敏捷开发模型中常用的过程框架,它不仅定义了项目开发过程,还定义了项目中各角色的职能。Scrum定义的角色中没有一个居高临下的控制者,更多是发动团队成员的主动性。其中有一个角色可供参考,那就是Scrum Master,可以翻译成“Scrum流程管理员”,它的职能是负责推动Scrum流程在项目中的实施,清除客户和开发工作之间的沟通障碍,使客户可以直接驱动开发。 Scrum,字面意思来源于美式足球(橄榄球)的术语“并列争球”。它在项目管理方面提出一些新的可操作的思路,这里不展开讲。 % H3 O% C Q. n8 w! P8 [0 A! _
以下是近几年来在我的概念和实践中,对研发团队管理者的角色定位: 研发团队管理者类似于球队教练,是紧盯团队目标的人,是团队的召集、支撑、维护、培养者,是主导流程、制度制定的人,是引导团队文化的人,是组织沟通和屏蔽干扰的人。 具体到工作任务上,你是招聘人的人,你是辞退人的人,你是关注大家状态的人,是点赞那个人,是大家有困难时要找的那个人,是能解决矛盾冲突的那个人。你还是起草制度、推广规矩那个人,是理顺流程那个人,是引导价值观的人。你也是做上下和横向沟通的人,对外宣布有事找我的人。但你最好不要是那个跟在大伙后面监督大伙干活,你一走大伙都不干活的人,你也不要是那个事无巨细亲历亲为的人。
/ b1 m) v! `2 ?. `四、绕过这些坑 管理岗位的初学者,很多痛苦,就来源于对自己的职能定位不清。 比如,你试图绝对控制团队。因为你在干技术的时候是可以绝对控制机器的,你先有一个思路一个设计,然后所有零件和程序按你设计的来。记住你是教练,你面对的是人,人都是有感情有缺陷会情绪低落甚至会生病的。你要允许他们犯错,必要时甚至鼓励他们试错,你在一开始制订计划时就要把人的不靠谱考虑进去。 另一个典型例子是,团队成员有一件工作干得不漂亮,你的第一反应是什么?技术型管理者,特别是比较要求完美的,有一种自然冲动就是“让开我来,我做给你看”。小心,你正在剥夺你团队成员进步的机会,不是万不得已不要这么做。你可以考虑让他再试试,或找人培养他一下,万一不行可以换人。 4 V0 {) k* J! H+ W2 z9 A, i. Y: L# d
一个问题是,管理者要不要以身作则做榜样?我认为,这个可以视你个人的风格而定。但如果一个团队必须要你做榜样,否则大家就乱套,那团队自我成长的能力是有问题的。 还有一个问题,研发管理者为什么要懂技术?我认为其实你可以不懂技术,但最好是懂。这更多是因为,你懂技术才能懂技术人员的思路与想法。当然,很多团队,研发管理者与技术专家的身份有重合,你还是一个技术指导者的角色,需要提供定义、解决问题的思想和方法论。 y8 P& z( [; U
|