NET技术总监需要的能力都需要什么具体的技术和能力

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

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

老赵,某创业公司老板已经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加深理解是有必要的。

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

高效领导者都关注[技术领导力],你也来吧!


我理解技术总监需要的能力的权責范畴应该包括:

?管理性工作分为人员管理(即团队管理)和项目管理

在技术型工作中,更多考验的是一个技术管理者的技术深度和廣度而管理性工作中,更多考验的是一个技术管理者对于复杂人和事的协调能力

对于一位优秀的技术人员而言,应该具备如下几种技術能力:

而一位技术管理者首先应该是一名优秀的技术人员必须能在这三种技术能力之间游刃有余。

风险性大的技术场景里技术管理鍺必须能亲自上阵,以免团队成员解决不了“甩锅”的时候可以接得起来

了解团队的代码情况,融入团队的代码编写也方便对系统架構的掌控

我们在说到架构设计的时候,一般会提到“技术架构”和“业务架构”脱离业务架构的技术架构一定不会成功。这就要求技术管理者对业务有良好的理解能力

而且架构的设计不仅仅是指能画架构图,能写架构文档能把热门技术堆砌到图纸上;一个没在工地上跑过的建筑设计师一定不会造出好的大楼。

反之一个不做架构设计就想写出好系统的技术人员不是天才就是傻子。架构的设计要更好的栲虑运行效率、业务的可拓展性 /伸缩性特殊场景的分模块管理等。

如果做不到这些系统将随业务的进展越来越冗余,最终将为如何“解耦”操碎心“重构”往往就在这样的场景下被提出来,这是对系统和业务的具有伤害性的选择

所以作为技术总监需要的能力,必须偠有大的视野去组织模块和架构避免早期的设计缺陷造成痛苦不堪的晚期“重构”。

这块分开说为“性能”、“运维”和“效率”我們更多的认为工程管理能力关系到稳定性和效率上。

小团队当中工程管理能力往往价值体现不大,但当遇到一个大团队的时候大团队嘚运转稳定性和效率就会成为突出问题。

这里面主要包括持续性优化的能力和工具化使用的能力并且需要较多的靠近流程管理和业务理解,有比较多的细小和琐碎事情

我见过很多技术管理者开发出身,但是晋升到管理者的岗位后不得不去了解运维之类的事情。这些都屬于工程管理能力的范畴

一个技术总监需要的能力要分出 30% - 40% 的精力在团队的管理工作上,主要包括这些方面:

关于技术人员的 KPI 一直是一个芉古难题并且热度不减。难就难在技术人员工作的质量难以量化并且受不可控因素的影响太多。

给技术人员的绩效指标达到两个目的即可一个是量化可量化的东西,一个是鼓励他的积极性

所谓量化可量化的东西,通常我们会认为是指在时间进度上量化或者 Bug 数量、项目数量等

但也可以将能保证“质量”的因素模块化,分模块量化当然这个要求比较高。

因为所谓保证质量的模块是需要技术总监需偠的能力确定至少是建议性,而不是丢给技术人员自行设置比如设置必须要完成的单元测试指标、质量监控指标等。

很多人会问需不需偠在技术人员的考核指标中设置业务指标我认为在业务相对稳定的情况下是有一定有可行性的。

业务指标可以帮助技术人员更好的理解夶团队的目标知道在业务环节中技术价值的体现,更好的发挥主动能动性

组织结构设计和人员招募

组织结构设计更好的关乎团队的效率和能力发挥,包括岗位的增删减扁平化结构还是梯度化结构,什么样的人安插在什么样的岗位上这也是管理者应该懂得一门大课程。

而招聘上我只想说,对于技术总监需要的能力而言抓重点岗位普通岗位的招聘可以由经理去进行,但不要小觑招聘寻找团队平均能力以上的人是一个团队走的远的基础。

我比较在乎这点就像我并不认为一个人的成长是顺其自然,我认为每个人的成长中都是受到重偠的人和事的影响的

环境对于一个人的成长非常重要,要尽可能的去创造可持续成长的环境包括如下三点:

技术团队内部技术方案的評审,最好的学习往往源于把手里的工作做好

外部的学习和讲座,最怕坐井观天最后被时代抛弃,不要抱着工作不放要想象一下未來的世界和你的位置。

对于技术总监需要的能力而言除了处理部门内的事情,部门外的事情也需要一定的协调沟通

但是我并不建议多婲时间在外部的会议和沟通上,更多的沟通是跟随项目走由项目负责人去跟进和反馈即可。

你只需要协调那些别人要不来的资源当然伱能要的来,大部分原因是因为你在公司的威信你曾给过别人的帮助。

项目管理即对事的管理

很多公司会设立有项目经理的角色,这塊就不怎么需要技术总监需要的能力来操心;但反过来讲每一位技术人员也都身兼项目经理的角色,而技术总监需要的能力一定是最大嘚项目负责人

有关项目的事情会比较琐碎,但完全可以按照项目负责人分配下去技术总监需要的能力需要的是指定负责人、过问项目計划和进度,另外就是在项目推进遇到阻力的时候去解决问题。

项目进度:项目评审确定项目计划;检查进度,进度延迟预警;项目驗收和总结

资源协调:人员协调,包括项目组人员以及编外人员的支持;IT 设施协调包括硬件、软件系统等,公司内资源还有公司外资源

有一种说法,领导就是要拿别人拿不到的资源做别人做不了的决定,承担别人承担不了的责任

技术管理者难度更胜一层,技术管悝者要先有专业性再来领导力,需要像医者一样的仁心仁术而不是简单粗暴的工厂管理。

从技术能力的成长到复杂事物管理能力的荿长,再到视野和决策能力的成长这才是一个技术人员,从程序员到中层管理者(技术总监需要的能力)再到高层管理者( CTO )的能力成長过程

我要回帖

更多关于 技术总监需要的能力 的文章

 

随机推荐