在多年的技术管理工作中,我曾不断地遇到很多已经转型或即将转型为技术管理者的同事,他们都表达了一些类似的困惑:如何成功转型?如何在不丢掉技术的同时还能提升管理能力?
以下是我个人在经历困惑和挣扎这个过程后的一些个人想法,在这里分享给大家。
什么是技术思维?
技术思维的成长路径如下图:
图1:技术思维的大致成长路径
基本编程
自己懂一点技术,能够编码实现一些具体的业务功能。
封装能力
具备一些基础功能的代码封装能力。
代码质量
开始关注更多代码相关的范畴,性能/健壮性、可阅读/可维护性、注释/文档、测试意识和能力。
工具能力
关注工作效率的提升 , 编辑工具、搜索工具、测试工具、脚本、插件 , 甚至自己动手写工具。
抽象思维
抽象思维有如下几点:
- 具备整体方案设计能力
- 逐步培养出抽象思维能力
- 开始具备对设计模式的理解及使用
前沿技术
前沿技术有如下几点:
- 逐步具备更广的技术视野,做前端的开始关注大前端、NODEJS 等。
- 虚拟化、存储、大数据相关技术。
- 特定领域更深入的技术。
架构思维
架构思维有如下几点:
- 开始关注跨系统的整体高可用。
- 关注跨系统之间的各种问题:服务化、服务治理等。
- 关注性能、安全性、可扩展性、开发效率 , 并注重几者之间的平衡。
- 关注基础系统、自动化系统。
- 开始关注云计算或具备更宽广的技术视野。
毋庸置疑,对于一名技术管理者来讲,应该具备一定的技术思维和技术能力,这是技术管理者的立足之本。
但是,只具备技术思维的管理者,一般来讲喜欢随时冲在技术的***线,对于技术还处在满足自己的技术成就的心态阶段。
什么是产品思维?
产品思维是从产品功能的角度去看问题,站在最终使用者的角度去思考。
产品经理一般要求具备一些产品设计方面的专业能力,并且具备较强的沟通表达能力。
对于互联网项目来讲,由于互联网产品本身就具有较强的传播性和连接用户的能力,因此产品思维显得尤其重要!
技术管理者应该具备以下这些产品能力:
- 具备一定的产品交互体验设计能力
- 具备一定的对于色彩、线条的运用把握和审美能力
- 一定程度的原型设计和产品设计的能力
- 具备较强的产品沟通能力以及快速理解产品设计逻辑和意图的能力
- 快速地理解和学习新的业务逻辑比长期熟知某项具体的业务更重要
- 对于业界前沿的产品方向和趋势具备较强的敏感度和学习意识
好的技术管理者应该具备一定的产品思维和产品能力,而不仅仅是把自己放在 “用技术来实现产品”的被动接受的角度。
好的技术管理者,应该理解“永远没有一成不变”的产品功能,技术架构和代码都是为了产品功能的修改而存在。
而我们要考虑的是:
- 如何用更加灵活的代码设计,让其具备更好的可扩展性。
- 提前预留接口,让系统具备一定程度的功能预见性。以便在需求和产品功能更改的时候,更好地掌控修改工作量、掌控修改风险。
什么是管理思维?
管理思维的成长路径,如下图:
图2:管理思维的大致成长路径
基本管理
是指管理者具备一些基本的以“计划、监督、检查”为手段来进行管理的能力。
沟通管理
是指管理者开始有意识的提升自己的沟通方面的能力。
沟通管理有如下几点:
- 对内/对外/同级都表现出良好的沟通能力。
- 注重邮件沟通、汇报方面主动采用良好妥当的形式等。
- 含帮助自己的下级提高沟通能力。
项目管理
是指管理者开始有意识的提升自己对整体项目上的把控能力。
项目管理包含如下几点:
对项目管理三要素“质量/进度/成本”的均衡达成的能力。
为项目制定适当的汇报机制、规范。
按承诺日期上线。
团队管理
是指对于人和团队的管理,包含管理者基于对于团队中各个成员的不同特点的了解对其进行个性化引导和培养的能力。
同时包含管理者凝聚一个团队,以及在需要时能够快速的形成和壮大一个团队的能力。
一个团队管理的好坏,也会有如下一些方面的指标能够看出一些端倪:
- 团队活跃度:是否保持一些不同的团建形式,并能容纳一些不同的想法。
- 团队凝聚力:团队中是否有一些非‘既得利益’的成员也愿意为团队的发展主动建言献策、主动承担。
- 团队稳定性:是指团队员工的整体稳定性、离职率高低。
规范化、流程化
管理者在团队成长到适当的阶段时,需要有意识的制定一些流程化、规范化制度,以便能够系统性的规避一些常见问题。但是,流程规范常常和效率形成矛盾。
因此管理者需要的是提出和团队当前阶段相适应的的流程/规范/制度,并在团队的规模和阶段变化时不断的去作出调整和修正,而不是一味的去强调制度规范,对于这个度的把握才是对于管理者***的挑战。
管理思维是什么,不是什么?总结如下十点:
- 管理思维是:我不一定亲自出技术方案、写代码。但是对这件事情从技术层面做得好与不好有一些超越具体的技术和框架之上的标准和原则。
- 尽量鼓励和引导好的方案由团队中的技术人员口里说出来,而不是由技术管理者亲自定方案,即便在心里已经有结论。
- 虽然技术方案不一定是由我全部定出, 但是技术的原则和边界,始终在我的掌控范围之内。
- 对于技术永远保持着一定的敏感度和不断的了解和学习。
- 对于如何调动技术员工的积极性、提升技术氛围有自己的见解和方法。
- 能够为团队指明技术的大方向,并前瞻性的作出一些技术储备。
- 对于责任的拆分和分担、对于提高下级的执行力有自己的方法。
- 坚信只要队伍带得好,永远有比自己在某个具体技术上更专业的人不断地涌现出来。
- 不满足于带领团队解决具体的技术问题,而是满足于为团队建立起 “制度化”、“常态化”地规避某些技术风险、解决某些技术问题的能力。
- 注重提升团队直接汇报对象管理能力方面的成长,注重在适当的阶段提升团队的流程化、规范化、制度化。因为团队这些方面的不足很多时候都是重复犯一些技术问题的原因所在。
- 管理思维不是一味的埋头干活,而是应当具备一些抬头看天、张口问路的意识。
什么是多维度能力?
如果将一名技术管理者的能力比喻为如下的立方体的体积,其能力公式如下:
整体能力 = 技术能力 * 产品能力 * 管理能力
则任何一个维度能力的短板都将严重影响其整体能力水平,如下图所示:
图3:技术管理者的多维度能力?
纯技术思维的人
他们很容易把自己封闭在一个纯粹的技术世界里,在那里只有自己研究的技术;容易固执地认为技术是***的,技术可以解决一切问题;容易过分的高估技术,人很单纯,也很固执。
他们无法很好的和不同类型的人达成真正的合作,其带领的团队也很难壮大,这样的人适合专注于搞技术,并不适合将其放在团队 leader 的位置。
纯产品思维的人
他们善于沟通、思维发散,初次交往时很会抓住别人的注意力。如果由其掌舵大型的技术团队,长时间后会发现他们容易出现思路逻辑不清。
他们缺乏恒久的坚持和方向感,也容易出现以用户需求之名把团队带进坑里。
纯管理思维的人
如果没有技术或者产品或者其他某一方面能力的补足,在以技术/产品为驱动的团队很难建立起威信,从而很好的带领一个技术团队。
作为一个技术团队的驾驭者,技术管理者需要在头脑中形成技术思维、产品思维、管理思维,等等多维度的能力和思考方式。
如果过分缺少某一方面的能力及思维维度,就如同生活中俗语所说的“少根筋”。从根本上来说,也会对团队带来很大的制约。
技术管理者的思考维度越少,其对某些专项人才的理解能力可能会出现偏差。
团队整体就有可能形成这方面的短板,要么是技术短板、要么是产品短板、要么是项目管理/按时按质上线的短板、要么就是团队成长方面的短板。
这样的技术管理者基本上很难带出特别优秀的团队。
由于缺乏太多其他思考维度,他们无法正确理解和驾驭整个团队的运作,难以接收和正确处理来自各个方向的外部团队反馈的各类信息。
因此团队进步缓慢乏力,他们很容易被别的竞争团队实施“降维打击”,在现实中不乏这样的团队和管理者。
另外,大部分 IT 从业人员有可能在一定的年龄、经验阶段在技术、产品、管理等单项能力上出现成长瓶颈,表现迷茫。
如果你是一名专注写了 5、6 年程序的程序员,可以根据兴趣有意识的去尝试在“产品设计”或者“管理能力”上进行提升。
这种提升不一定非要转型为产品经理或者管理者才能启动,平时做程序开发时多主动参与需求分析和产品设计、多画画原型也能提升自己的产品能力。
多尝试做一些技术团队跟业务团队的沟通、推广工作,或者在团队中主动担负起“带新人”,也是管理能力某一方面的成长。
如果将一个人的整体能力看做 X * Y * Z,如果 X 的成长已经达到阶段性的“极限”,则 Y 和 Z 的增长也不失为提升整体能力的手段!
七项核心能力和成长路径
下图是本人在某大型互联网公司时作为一名技术管理者为团队总结的“技术管理者应该具备的七项核心能力和成长路径”:
图4:技术管理者的七项核心能力和成长路径
以上七项也可以理解为技术管理者应该具备的七个维度的能力。
虽然,包括我自己在内的很多人都无法同时让这七项能力都非常优秀,也不是每一个技术团队都有机会去同时发展这些能力。但是,我还是固执地将其作为自己在技术管理道路上的成长目标。
另外,能力维度和每一维度的能力的高低是有区别的。对于管理者来说,多一个维度少一个维度是质的区别。
同一个维度,能力高下只是量的区别。对于某些阶段的团队,维度的多少甚至比维度的深浅更加重要。
任何一个团队一定是在多维空间中去经营出来的,竞争对手不会原谅你在别的某一项能力维度上的完全缺失!
同样的道理,对于创业者一样的需要多维度思考能力。当然,对于创业者来讲其还应该更多的具备商业思维、财务知识、拉投资的能力等等。
所以,如果创业者认知和能力“缺维”,即使是大公司出来的技术大牛,其独立创业或者作为合伙人创业的表现可能还不如那些当前各项能力一般但能力比较均衡的新人。
以上想法,与诸君共勉!
作者:陈旭
介绍:京东前技术总监,超过 16 年的软件及互联网从业经验。曾负责京东私有云以及公有云的开发者服务部分,在私有云基础平台及基于大数据的风控方向有丰富的理论知识和实践经验。