做一个合格的技术管理者

工作6年半,最近有契机让自己停下来检查过往的工作,为下一个里程碑做好准备。

做一个技术管理者,可能是中国式IT发展的经典套路,毕竟很多人都要面临30岁以后写不动代码怎么办的问题,因为认知的改变,现在条件普遍上升到了40岁😆。

结合我自己的经历,总结下技术管理者应该具备的素质,而我自己明确有许多不足的地方,路还很漫长。

既然是技术管理者,那肯定是和技术强关联的,骨子里就认同并热爱技术。具体应该表现在基础扎实、实战经验过硬、某个领域的攻坚、对技术敏感且包容,这是一个技术领头人的硬实力。技术思维也是非常重要的,认同技术短期服务业务,长期应该驱动业务发展,需要带着严密的逻辑性来分析问题,用自动化的思路来解决问题,用预警机制来降低风险。

反观自己,理论基础可能是自己的硬伤,空凭一腔热爱和敢于折腾,走上了程序员道路。一定规模内的应用还能hold住,真到复杂化的场景可能就啃不动了。对于这点的弥补,团队的重要性就体现出来,团队内必须有相应的人顶上,并且给予足够的信任。

所以,谈下如何在团队中发挥技术管理者的作用,工程师的分水岭就体现在前期能否管理自我、站稳脚跟,后期能否带领更多的人达成目标、创造价值。管理学是一门非常复杂的学问,但对于一个团队的技术管理者,主要职责可以归类于项目管理和团队建设。

项目管理首要是有代入感,把自己当成创造者而不是协作者,这样才有动力和责任心去完成,除了技术方案的评估,对于业务也要求非常熟悉,能提前感知风险并排除阻碍,项目的质量和如期交付同等重要。

团队建设可能是一个技术管理者最棘手的问题,收效慢需要长期耕耘和传承,我在此花了许多时间也走了不少弯路。相比于技术主导和项目管理,团队建设更缺少可复用的模式,每个团队的风格也不尽一样。团队建设涉及的环节也非常多,招聘、培养、激励、考核、规范流程、分享和交流、影响力……可以总结的有这几点:技术人员普遍有较强的自主性,引导多余约束;关注每个人的定位和需求,给予足够空间和帮助;创新驱动,不要增加负担。

最后给过早被推上位的技术TL一些忠告也算是经验,不要只顾投身于团队奉献而忘了自己的出发点;情感会蒙蔽自己,利益驱动才是本质。