七位 CTO 纵论技术领导者核心能力
关于技术领导者的具体职责和能力要求,每个企业会给出自己的定义。同样的职位,由于企业文化的区别,以及具体的业务和发展阶段不同,相应的要求也会有所不同。但总体来说,有一些核心的能力,是衡量一位技术领导者是否优秀的通用标准。
通常来说,CTO 这个岗位对技术领导者的能力要求是最全面的,基本上可以覆盖技术管理核心能力的各个方面。因此,我们邀请了七位现任或曾任 CTO ,请他们根据自己工作中的体会,总结 CTO 需要具备的核心能力。对比来看,非常有意思。
“ CTO ”、“首席技术官”这三个英文单词或五个汉字,其实已经揭示了 CTO 所需要的核心能力。我自己总结起来是 5个" shi "字。
第一个是"将士"的士,也就是要会带兵。“首席”和“官”这两个词天然赋予了你带兵用兵的责任。所以了解每一个团队成员的特征,关心每一个小伙伴的成长,打造一支能战斗的团队,是对 CTO 最重要的要求;
第二个是"做事"的事,除了带人,CTO 也需要身先士卒、迎难而上,CTO 没有攻坚平事的能力,愧对"技术"这个词;
第三个是"视角"的视,CTO 也要有行业洞察、市场思维、成本视角,只有多视角的观察自己所研发的产品、服务的用户、所处的市场环境,才能找到更匹配的技术解决方案,为员工、企业乃至社会创造价值;
第四个是"试错"的试,CTO 要勇于试错,当然有错了也要勇于承担,勤于总结,CTO 不敢试错,那团队成员就更不敢试错了。创新和成功是来自于无数次的试错;
第五个是"顺势"的势,CTO 如果不能预判技术发展趋势,团队一定会面临无头苍蝇或者 得过且过的窘境。同时 CTO 也需要学会顺势而为,借助各方的资源和力量才能更好地带团队、攻难关、聪明地试错;
CTO 就是这样一个需要会带人、能攻坚、有视野、愿试错、懂得顺势而为的岗位。
CTO 的能力要求很多,但我觉得有几个能力属于核心能力:
第一个是运营能力, 当然,因为 CTO 主要是 focus 在技术前缀下,所以,他负责的是技术组织的运营, 这包括日常,组织结构以及技术文化和营销等一系列软硬结合的运营方式;
第二个是转承的能力, CTO 和产品技术部门的核心职责是支撑 CEO 和公司业务,所以,要能够很好地理解 CTO 和 Peer 部门的意图和规划,进而推动落地;
第三个就是吸星的能力, 爱才如命,什么时候 CTO 对人的重视略高于对技术的重视的时候,CTO 的格局就更上一层楼了。
这是我的几点粗浅认识,仅供参考。
CTO 首先是一个 O ,O 本身代表着一个管理职位,其次还有 Owner 这层意思,他要很了解这家公司的业务,包括人才战略、市场战略、用户战略、增长战略等,甚至必须参与这些战略的制订。
技术说到底是为业务服务的,除非技术就是业务本身。在很多公司里技术真的就成了实现其他部门需求的工具,我觉得这样做 CTO 肯定是不合格的。首先它不能影响战略,需求提出方会经过很多转化,如果不是基于战略去推导,整个过程会失真。
第二个,我认为最最重要的是业务架构的能力,可能管理能力还次之。对于管理能力我认为最重要的是对团队的感知能力,因为一旦到了 CTO 这个级别,他已经脱离一线,很难再把一些细节还原。如果没有很细腻的感知能力,很多的决策会有偏差。
如果他不是一个业务架构师,不是一个能给团队指明更好方向的人,他最终会沦为一个需求翻译器,产品经理说怎么做就怎么做。他更多的只是负责保证产品的质量、开发的速度,最终被肢解成一个很琐碎的人。一旦团队上了一定的规模,团队就会从单纯的需求实现走向团队运营,而运营是需要方向的,业务架构就是一个基于运营和数据的一种综合的能力。
总结一下,我觉得最重要的就是参与战略制订、战略实施和战略分解的能力。其次,就是业务架构的能力和对团队感知的能力,微观事物感知的能力。
我觉得 CTO需要具备如下 5方面的素质:
CTO 要有良好的技术视野,不需要各种技术都样样精通,但是必须要所有涉猎,有所了解,对各种技术领域的发展趋势,主流非主流技术的应用场景要非常了解。知道在什么场景应用什么技术,公司业务发展到什么规模应该预先做哪些技术储备。产品架构的设计要有足够的弹性,既能够保证当前开发的高效率,又能够对未来产品架构的演进留出扩展的余地。
CTO 并不需要自己亲自动手写代码,但是如有必要,自己可以随时动手参与第一线的编码工作,CTO 不能长期远离一线工作,自废武功,纸上谈兵。否则长此以往,会对技术的判断产生严重的失误。另外,CTO 也应该是一个学习能力非常出色的人,毕竟 IT 行业的技术更新换代速度非常快,如果没有快速学习能力,是没有资格做好 CTO 的。
CTO 的责任是负责整个公司的产品实现,所以 CTO 要善于管理研发团队,掌控好研发工作进度,能够在规划好的时间内,步步为营,好整以暇地完成公司产品的研发工作。
此外 CTO 还要擅长培养研发梯队力量,建立研发团队内部具有向心力的,开放性的,交流学习型组织文化。让研发团队具备自我学习能力,自我培养能力,自我建设能力。这样的研发团队工作极度默契,战斗力极强,而且员工归属感很强,流失率很低。
CTO 不仅要懂技术,还要对互联网产品有良好的感觉,从产品的逻辑性,可实现角度提出产品改进和完善的总体性设想。因为产品经理或者业务人员设想的产品,很可能是逻辑上不严密,存在实现矛盾的。
此外 CTO 还需要极强的沟通能力,要能够和不同背景的人有良好的沟通能力,能够用对方的思维方式和话语体系来描述他不理解的专业问题。
只要不是技术出身的 CEO ,必然对研发是门外汉,很可能对产品也是门外汉。因此,CEO 不是每个想法都靠谱的,CTO 有责任站在更加专业的角度去帮助 CEO 纠正,推演,完善想法。一个不敢对 CEO 说不的 CTO ,这个公司肯定要走很长很长的弯路的。
在我看来,CTO 可以不写代码,但是这意味着你有更重要的事情要做,比如需要具备技术战略、体系建设、人才培养、企业文化、商业眼光、领导艺术等方面的素质。
首先,CTO 是技术战略的主导者。在 CTO 的这些素质中,最基本是要有技术战略。比如:编程语言选 Java 还是其他的语言,有新技术出现的时候,及时地安排团队的人去学,以备不时之需。当然 CTO 自己也要不断学习新的技术,不断更新自己的知识储备。
其次,企业文化是非常有力的管理工具。企业文化很重要,但在实践当中经常会被忽略。CTO 也要管企业文化,不但要引导企业文化,而且要身体力行。其实企业文化是一个能够帮你把整个企业的研发人员、氛围、管理过程组织起来的有效手段。
最后,要打造良好的技术团队氛围。研发人员需要一位能指导他们、了解他们的大哥,我在易宝经常会跟兄弟们抽抽烟,聊一聊,有的时候也会写写代码,原因在于可以通过写代码去了解大家在想些什么。你作为技术领导者,必须进到那个氛围,了解一线员工在做什么。然后作为他们的代言人,代表技术团队跟公司管理层争取一些利益和福利,大家才会觉得这是我们的带路人。
在我看来,合格的 CTO有六大要素:
技术领导者会面临很多技术问题,尤其业务发展了以后,过去的一些技术瓶颈,都会变成问题。在这种情况下,要具备快速解决问题的能力;另外,你要指明方向,带领团队共同前进。
几乎所有的互联网公司都会遇到技术债,当业务发展到某个阶段时,一定会爆发。有技术债怎么办?除了能够“发现”债的存在,还要适时“还债”,作为技术领导要有这种前瞻性。
首先,要从业务负责人或 CEO 的角度去思考他提的需求是什么。其次,要会平衡产品需求,判断产品需求的优先级。第三,要提高交付满意度。第四,要有业务洞察力,要对业务有强烈的兴趣。如果你对业务非常有感觉,那么你跟 CEO 的交流就会上升一个层次。
你要意识到自己处于什么位置?周围的人跟你的平衡点在哪里?自己的优势和短板在哪里?对自我有一个清晰的认识非常重要。认识自我还不够,还要认识团队。团队整体技术水平是什么样?团队的短板在哪里?有这样的意识,你就知道在哪个方面应该补强。
实践起来主要有四点:第一,招募培养接班人;第二,CTO 自身的影响力;第三,自己的人格经要得起别人的挑剔,做到客观公正;第四,能创造优秀的团队文化。
作为一个技术领导者,如果你经常为整个业务或者团队带来新的东西或思路,与公司授予你的权力相结合,那么推进起来会非常快。虽然自下而上的创新也可以成功,但是根据经验和中国互联网过去的发展,从上到下去推动改变会更快一些。
一个好的 CTO 是能够把商业和技术结合起来,或者说具有商业敏感性的 CTO 。我认为有三点:
第一,CTO 应该具备商业洞察能力。我比较喜欢看一些商业书籍,来锻炼自己的商业分析能力、判断力、决策力,因为只有把技术和商业去结合的时候,它的价值才能呈现出来。
第二是战略思维。很多 CTO 都是从技术人员做起来的,技术人员往往会想一个问题怎么做,他解决的是 how 的问题,但是在研究战略问题的时候,我们更多研究的是 What 和 who 的问题,或者说,我们更多的是看趋势、看未来,如果看得远,就可以反过来思考,现在做得是否对。我们有时候太关注技术本身,没有站在战略角度考虑问题。
第三是个人的影响力。这种影响力包括影响同事,影响下属,甚至影响 CEO ,当你有一定影响力后你会发现,你能团结凝聚更多的人,那你做事情就比较容易。对于 CTO 来说,领导力的核心就是影响力。
***