查看原文
其他

公司新招技术总监,让他写代码被怼:我不写代码的

刘望舒 2022-06-29

The following article is from 技术领导力 Author 技术领导力社区


作者:黄哲铿/《技术管理之巅》作者、特约撰稿人


标题来源于一段真实的对话,老赵,小李都是我的朋友,我作为中间人介绍他们认识,我们约在上海码农圣地--张江某咖啡馆。



老赵,某创业公司老板,已经B轮融资,技术团队30人左右,已经难以支撑业务的发展,迭代速度缓慢、系统经常宕机影响到了业务,老赵几次三番委托我给他物色一位技术总监,解决技术团队目前的问题。

小李,某点评网高级技术经理,毕业后就一直做技术,5年开发+2年管理经验,目前负责60人的技术团队,在我看来是非常合适的人选。



老赵一上来,咔咔咔画了张大饼,业务如何如何正在风口上,公司如何如何受到资本青睐,根本不缺钱,现阶段重点把技术和业务理顺了,再到资本市场搞票大的......

小李是比较典型的技术男,人狠话不多,坐在一边听,不时的点头,我也分不清他是真的感兴趣,还是在秀演技,总之我听得云里雾里快睡着了,猛喝了两口咖啡,提振下精神。



我看了看表,一小时过去了,老赵还没有停下来的意思,说真的,创业太委屈老赵了,就凭这口才要是改说单口相声,早就冲出张江镇,火遍高桥镇了。

我说,老赵啊,已经说了一个多小时了,差不多得啦,都是自已人,直奔主题吧。

老赵正讲到兴头上,被我打断有点不高兴,又不好意思发作,毕竟小李在场,大家都是有朋友圈的人,待会还要晒合照秀友谊的。

老赵说,哦,介绍得也差不多了,反正就这么个情况,小李啊,来我公司做技术总监吧,我们谈得挺投机的,可以说是一见如故,你是有能力的人,我能感觉到你内心有一团火。

我没有提醒老赵,这一个小时里,小李总共说了三句话:“嗯”、“啊”、“哦”。

小李说,赵总,我想问一下,您对技术总监的期望是什么样的?比如偏管理一些,还是偏技术一些,偏技术的话,需不需要写代码,可以说得具体一点。

老赵回答,技术总监当然要偏技术啊,不写代码你来干嘛?



被老赵这么一怼,小李竟然无言以对,或者是话不投机吧,小李端起咖啡,自顾自地喝起来,老赵又聊了一会梦想啥的,也自觉没趣,没过一会就走了。

老赵走后,小李话开始多起来,每个IT男闷骚的外表下,都有一颗火热的心。


小李说,赵总这个事,看来我是帮不上忙了。我说,没事,这种事情是要看缘分的,可能是缘分没到吧。


小李接着说,我们难得见一面,好好聊聊,其实我一直有个困惑,我们做技术管理的,写代码的时间越来越少,手越来越生疏,但是参与了更多的技术评审和技术决策,似乎是很矛盾的事情。

小李拨弄着咖啡杯里的小勺子说,我时常感到很焦虑,自已技术能力越来越差,日常管理工作又非常琐碎,没时间提升技术,会不会有一天年龄大了,失去了价值或性价比,就被行业淘汰了。



01 技术管理者的核心能力是什么?


我一边搅拌着咖啡,一边对小李说,其实你说的是两个问题,第一,技术管理者的核心能力是什么?第二,技术工程师和技术管理者的技术能力有什么差别?

我喝了一口咖啡接着说,先说第一个问题,技术管理者的核心能力是什么,说实话这也是曾经困扰我的问题,直到有一次上MBA课的时候,教授的一句话让我一下子通透了:

管理者的核心能力是什么?是职业判断力。

我继续说到,2013年阿里巴巴的张勇看到了移动互联网的未来,提出“All in移动”,帮助淘宝顺利拿到移动互联网的船票,这是职业判断力。

海尔张瑞敏,在互联网时代来临时,提出“人单合一”模式,革自已的命,企业获得了重生;在万众创业的时代,提出“创客模式”,把企业变成创客平台,释放了企业的创新力,这是职业判断力。

同样的道理,技术管理者的核心能力,就是技术判断力。技术判断力简单说来,就是某个技术项目“要不要做”,要做的话“能不能实现”,是否适合现在做,还要考虑技术风险、项目管理复杂度、成本等等,已经远远超出了写代码的范畴。



02  技术工程师和技术管理者的技术能力有什么差别?


我接着说,第二个问题,技术工程师和技术管理者的技术能力有什么差别?简单说,技术工程师的技术能力,就是写代码,做具体的技术实现。技术管理者的技术能力,是技术判断力,通过在技术领域和非技术领域的长期积累,培养起来的技术决策能力。

小李有所感悟,哦,原来我一直把技术工程师的技术能力,跟技术管理者的技术能力混为一谈了,这样看来,讨论技术总监应不应该写代码,是非常可笑的。

我说,这个要分场景来看,比如创业团队,缺乏资源,技术负责人当然事必躬亲,动手写代码,当团队慢慢壮大,技术负责人就要把重点放在做技术决策上面。

小李接着说,也就是说要看团队所处的阶段和团队规模,以及技术负责人的角色定位,来决定他的工作内容,究竟是做技术实现,还是做技术决策,还是两者兼而有之。

我点点头,表示赞同,技术总监或CTO是否写代码,离开具体场景的讨论是没有任何意义的。

小李接着问,那赶快说说,技术判断力都包含哪些方面的事情?技术管理者又该如何提升技术判断力?



03 技术判断力,都判断哪些方面的事情?


我放下了手中的咖啡杯说到,技术判断力主要体现在三个方面:

第一,对结果的判断。即这个事情做还是不做,用什么样的指标来衡量它的好与坏,比如:开发人员提出要用Flutter对现有App进行重构,你要给出一个判断做还是不做。技术人员考虑这个提案的出发点也许是想玩一玩新技术,给自已的简历上加分,而你作为技术管理者,考虑的是现阶段公司App的关键问题是什么?假设说是App稳定性、开发速度不够快,那么Flutter作为一种新技术框架,能不能解决现有的问题?如果不能,那么现在引入它也许还不是最好的时候,可以安排一两个技术人员做预研,开始关注这项技术。

小李感慨到,原来技术工程师跟技术管理者对同一个问题的思考角度和维度差别这么大。

我回答,没错,我们继续往下说。


第二,对技术方案的判断。即对技术可行性、可维护性、成本收益等方面进行判断,通常在技术方案评审环节给团队进行指导。比如这个方案是否具备技术可扩展性,能不能为公司建立起技术壁垒,技术框架里有没有详细日志记录,出现线上故障是否有预警,并且提供详细的错误日志进行分析,选择这项技术的机会成本如何?所谓机会成本,即选择这项技术就会放弃别一项技术,有没有可能另一项技术的收益更大?

小李点点头说,技术管理者对技术方案的判断,也比技术工程师思考得更深、更全面,技术工程师或许只考虑,好不好实现,而技术管理者要确保方向上不出现大的偏差。

我说,是的,我们继续说第三点。



第三,对风险的判断。包括技术风险、项目执行风险、团队风险等方面。技术管理者利用自己的经验、思考分析、团队讨论等手段,识别出主要的风险,并采取措施进行规避。


小李很有感触的说,原来我平时做的技术评审、项目回顾、技术方案规划等工作,就是在做技术判断,我的技术能力并没有变差,因为我作为技术管理者,技术判断力在日常工作中,得到了持续的锻炼和提升。

我点头表示赞同。

小李继续问,那快说说如何提升自己的技术判断力,有哪些方法?


04 如何提升自已的技术判断力?


我喝了一口咖啡继续说,新技术管理者的技术判断力,主要来源于之前写代码和做项目的经验积累,这时候要做好知识迁移,将技术工程师的经验认知,转换成技术管理者技术判断的认知。

小李露出一丝微笑,仿佛回忆起刚开始做管理时的情形。

我继续说,技术判断力的提升,主要有四个方面。

第一,团队日常技术和产品工作汇报。团队在汇报技术和产品进展时,是获取信息反馈,验证技术判断的大好时机,看看自己之前的技术决策产生哪些影响,有无需要调整的地方,也可以学到下属们的思考和经验,及时更新自己的技术和产品认知。

小李说,是的,我非常重视团队的汇报,并从中学习。

我表示赞同,我接着说。



第二,参与技术方案评审。小到每次code review,大到系统整体方案评审,都要尽量参与。尤其是大型系统整体架构评审,这是系统化提升技术判断力最好的机会,架构师的讲解,包括架构设计的逻辑,每种技术的特性等等,结合自己的理解和经验给团队反馈,架构判断能力也得到提升。


第三,主持系统顶层设计和规划。技术管理者可直接担任或主持系统顶层设计规划,业务架构规划、系统各层的划分、子系统之间的数据交互协议、技术框架选型、系统容量规划等等,从技术整体架构进行把控,再由团队进一步展开做更细的规划。

小李说,所以大的技术方案设计和规划,还是要参与的。

我说,没错,不要错过每一个提升技术判断力的机会。


第四,持续学习新技术。从事技术管理工作,并不是说完全丢弃技术,只是放弃了大部份的代码工作,但是新技术的学习是不能停止的,比如人工智能的技术框架、机器学习的几种模式以及擅长解决哪些问题。

再比如区块链几种共识算法的特点、实现原理、加密算法、记账方式差异等等。关注的是这项技术解决什么问题、实现的原理和机制,而不是如何熟练使用这个新技术写Hello World,当然写一些demo加深理解是有必要的。


小李笑着说,跟你这么一聊我也通透了。说着,一边搅拌着咖啡,一边望着窗外陷入了思考。


 --------  END  ---------

推荐阅读

(点击标题可跳转阅读)

字节跳动 CEO 张一鸣炮轰 HR , “按这要求我自己都进不来!”

今天,谷歌为中国开发者带来了什么?

2019年9月全国程序员工资统计,值得参考



  

喜欢就给个“在看”


您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存