NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

叶亚明:合格 CTO 的六要素

  • 2017-03-08
  • 本文字数:4243 字

    阅读完需:约 14 分钟

叶亚明,携程旅行网 CTO & 高级技术副总裁,负责携程的移动、Online、呼叫中心等的技术架构、开发及运营。在加入携程之前,叶亚明是 ebay.com 技术平台总监,领导 ebay.com 几代网站的架构和平台升级。他在美国加州硅谷拥有超过 15 年的互联网工作经验,曾经任职 ebay、yahoo 和 startup 等。

在携程 5 年间经历了很多事情,我把这些归纳了一下,今天分享给大家,希望引起一些共鸣。

什么是技术领导力?

可以用一句话来概括 CTO 的技术领导力,就是“带领团队快速响应业务,并支持业务 10X 增速的综合能力”。

主要有三点:第一,要快速响应业务;第二,要搭好 10X 增速的架构;第三,对内对外要树立技术品牌。做到这三点的话,作为一个技术领导人,会比较踏实。

首先我想框定一下今天所讲的 CTO 范围,这里的“CTO”或者说技术领导人,不是指大型企业或集团的 CTO,而是企业某业务部门的技术领导人,也可以是小微企业技术领导人,或者单一业务的初创型企业技术领导人,这个领导人要对产品的研发、设计、运营全面负责。

关于 CTO 的基本能力——树立团队技术愿景、组建高效技术团队、带领团队交付项目,实现业务需求,这些大家听过很多了,这不是我今天讲的重点。今天讲的内容是结合我的经历提炼出来的,和大家分享一下。

为什么提出六要素?

过去四年携程变化非常快,现有业务倍速增长,16 个全新业务要发展,外部竞争形势严峻,业务要求研发提升响应速度,而团队缺乏独当一面的干将。这样的情况下,带领团队的业务压力很大,技术压力也不小。只要你当过技术领导,那么你对这样的场景不会陌生。

我们提出合格 CTO 的六要素,当时是用来作为外部招募和内部人才培养的标准,让他们拓宽思路,学习如何在实践中应用。

要素 1:技术问题的解决能力

作为技术领导者,你会面临很多技术问题。业务发展了以后,过去的一些技术瓶颈,都会变成问题。在这种情况下,对技术领导者有较大的考验,一个是时间紧迫,要快速解决问题,还有就是你要指明方向,带领团队共同前进。

举一个例子,酒店是携程的主营业务,过去酒店数据库服务器承受不了访问的压力怎么办?我们想了一个办法,数据库读写分离,真正读占 80%,写的话,20% 都不到,读写分离之后,性能提升了 6 倍。如果没有这个决策,这个问题就会成为业务快速增长的障碍。

要素 2:具备强烈“还债”意识

几乎所有的互联网公司都会遇到技术债,技术债是潜在的,当业务发展到某个阶段时一定会爆发,有技术债怎么办?除了能够“发现”债的存在,还要适时“还债”,作为技术领导要有这种前瞻性。

比如,不同的业务架构的耦合问题。两个业务或服务本来应该没有关系,如果耦合在一起,时间长了就会变得非常复杂。业务之间的数据耦合也没有必要,应该隔离起来,还可以做到安全。

再比如登录问题,如果每个业务搞一套自己的登录系统,会非常危险。因为登录对安全的要求非常高,如果出现漏洞,后果就很严重。登录不仅需要从架构角度考虑,还要从安全的角度考虑,看有没有做到很好的统一。因为这种债现在不还,以后也得还,并且成本更高!

还有测试环境,当时携程扩展了 16 个新业务,每周要发布许多的项目,如果还用之前的测试环境是远远不够的。2011 年我们就开始部署针对移动研发的测试环境,但一直是小打小闹,等到 2013 年,每一条业务线都在做移动研发的时候,之前的环境已经不能胜任了,需要重新架构、组建。

所以你要能够在问题爆发前发现它,并解决它。

要素 3:构建与 CEO 的良好伙伴关系

作为技术领导,需要跟业务领导紧密配合,成为最佳搭档,建立这样的默契需要一个过程。

首先,技术领导要站在更高的视角思考问题,要从业务负责人或 CEO 的角度去思考他提的需求是什么,从观念上先调整过来。

其次,作为技术领导,要会平衡产品需求。研发资源有限,你要判断产品需求的优先级,而不是所有的业务需求都接受。可以用二八原则,重点关注能够收获 80% 产出的那 20% 项目。

第三,要提高交付满意度。

第四,要有业务洞察力。作为某个业务的技术领导,你应该对这个业务是非常有兴趣的,在业务上要有一些洞察力,如果对业务非常有感觉,那么你跟 CEO 的交流就会上升一个层次。

要素 4:清晰的自我认识

这是一个软技能,你要意识到你自己处于什么样的位置?周围的人跟你的平衡点在哪里?自己的优势和短板在哪里?你需要自省,对自我有一个清晰的认识,这非常重要。

作为技术领导,认识自我还不够,还要认识团队。团队整体技术水平是什么样?团队的短板在哪里?有这样的意识,你就知道在哪个方面应该补强。

举个例子,在携程快速发展时期,我面临的问题是要为新业务配备得力的技术领导人,比如门票、金融等业务。过去几年,携程引进了一些新的技术骨干,他们在某些领域更加专业。另外,你还要意识到团队中的技术欠缺,并确定这个问题是自己解决还是交给别人解决,如果交给别人,你就要去找合适的人进来,这样团队才能不断提升。

要素 5:团队人才建设

这个技能说起来简单,做起来还是挺难的,主要有四点:

  1. 招募培养接班人;
  2. CTO 自身的影响力;
  3. 你自己的人格经得起别人的挑剔,能不能做到客观公正;
  4. 你是不是能创造一个优秀的团队文化。

这方面的大道理大家都清楚,如果真正去练习的话,你会发现很多可以提高的地方。我会经常问自己一些这样的问题:

  1. 你的团队是不是一流团队?这里的一流团队是要跟你的竞争对手去比较,比如携程是跟国际的 OTA 公司进行比较。
  2. 谁是你团队的一流人才?
  3. 一流员工加入和流失的原因?
  4. 一流员工的离开是否对团队产生根本的影响?

这些问题跟上面所说四点有非常大的关系。

要素 6:给工作注入新的东西

作为一个技术领导,如果你经常为整个业务或者团队带来新的东西或思路,与公司授予你的权力相结合,那么推进起来会非常快。虽然自下而上的创新也可以成功,但是根据经验和中国互联网过去的发展,从上到下去推动改变会更快一些。

首先,要引入领先的技术和技术管理模式。看看技术上有什么样的欠缺,需要引进哪些新的技术。还有就是技术管理,携程通过管理使团队拥有强执行力,甚至达到“军事化”的产品交付能力。

其次,不光引进,还要带来改变。你所带来的改变,能让你的领导、同行、下属都认识到,价值就体现出来了。

第三是创新。举一个例子,关于携程大数据的落地。2012 年,那时候是没有大数据的,我们只有小数据,如何让这套大数据系统落地呢?这些新技术的引入都应该是技术领导去推动的,而不是等着工程师来推动。

再举个例子,APP 包大小的问题很多人都碰到过,因为携程的旅游业务比较完整,包大小的控制难度会比较大。在 iOS 上,超过 100M 的 APP,非 WIFI 环境下会弹出一个框不让下载。我们做了测试,了解这个会影响多少用户,带来多少业务损失,最后想了很多招,把这个问题解决掉了。

最后是交流和分享。之前携程的技术分享氛围比较弱,我们就发起了很多分享活动,一群有兴趣的人每周都会进行交流。携程也会主办一些活动,也会参加其他组织办的活动,比如 InfoQ 举办的 QCon 大会,我自己也参加过几次。

总结

我上面讲的这些内容,可能大家会有一些共鸣。哪怕能让你有一点或两点改变,可以对你产生一些影响,今天这个演讲就值得了。需要强调的是,今天我只是提供了一个思考框架,要做到熟练应用,还得靠自己多练习。

对话叶亚明

嘉宾主持:王勇睿,百融金服合伙人、互联网事业部总经理

王勇睿:您怎么看待携程以及携程技术团队的改变?

叶亚明:可以从几方面来讲:

大家能感觉到的首先是携程的改变,携程从呼叫中心为主的业务转变到移动互联网,这是一个比较成功的例子。这个成功一方面是抓住了移动互联网爆发的机遇,同时技术团队与时俱进,通过创新和管理提高效率,与业务密切配合,使整个业务线成功完成往移动互联网方向的转型。

第二个改变是团队基因,我们在团队中倡导工程师文化,改变技术氛围,为团队注入更多的互联网基因,整个团队有了一种使命感,这方面的转变也比较成功。

第三个引进了一些新的理念,比如移动优先、用户费力度、云计算、大数据、10X 架构等。

第四个,对业务的快速响应,我们无条件要求技术团队快速响应,快速交付,在此基础上还要支撑业务的高速发展。

回过头来看这些变化,挺为团队感到骄傲的。

王勇睿:携程的业务发展这么快,技术团队肯定也要一起跑得快,技术和业务之间是如何平衡的?

叶亚明:平衡技术和业务之间的关系,在满足业务需求的同时,合理调配技术资源,每个公司都会碰到这样的问题。

携程的技术团队采用了一个分布式的技术组织架构,在这个架构中,各个业务线跟技术线是一个整体,把它作为一个 BU,开发、测试、运营人员的开销是落在这个业务线里面的,最后成本跟产出也是属于业务线的,这样就解决了很多问题。

还有一块是公共技术,虽然这些技术不直接面对业务需求,但是要为业务的开发工作承担公共基础设施的建设,像大数据、框架、安全、风控、账号之类。

剩下的是要有评判能力,这个项目是不是真的值得做,比如携程之前火车票和酒店打包一起卖,不是很有效,直到最近作出了一些初见成效的尝试,这时候就值得投入资源。

通过 CTO 的评判能力,开发资源能做到 20% 的项目产出 80% 的价值,做出这个平衡意义就非常大。

总结一下,我的回答主要有两点,一个是要有合理的组织结构,还有一个是作为 CTO 需要有评判的能力,这两点做到的话,大部分问题会解决得比较好。

王勇睿:您刚才分享中提到培养接班人,该如何去找这个接班人呢?

叶亚明:这件事情携程已经在做了,我自己或者下属的人,大家都要培养接班人,我一年前做了一个“接班人计划”,列出了每个岗位上的候选人是谁,候选人也可以不止一个。

做了这个计划以后会发现有两个问题,一个是这个团队有没有接班人,第二是如果已经有接班人,那么什么时候可以接班。有些团队缺接班人,就可以从外面引进。建立起这样一个透明机制,是技术领导都要做的事情。

参会者提问:叶总您好,您刚才说把技术团队的成员放在业务的 BU 里面,那么绩效是如何考核的?怎么保证业务团队的整体性?

叶亚明:这个问题很好,私下里被很多 CTO 都问到过,携程有一套技术考核体系,这个体系也是过去两年提炼出来的,还是可以做到相对客观透明的。我讲几个关键点,一个是技术人员有一个考评机制,来给他们打分。还有一个述职机制,每半年一次,大家评分,按照评分的结果决定是否升迁。

技术领导在业务线上的考核方面,首先是这个业务的 CEO,他有很大的发言权,技术团队在你的带领下做得好不好,决定了他的业绩,同时,我也会比较仔细的去考评他这一方面的内容。业务线 CTO 下面技术团队的考评,由业务线 CTO 自己来做。这样做完了以后整个体系就出来了。

2017-03-08 16:063378

评论

发布
暂无评论
发现更多内容

“不服跑个分?” 是噱头还是实力?| 龙蜥技术

OpenAnolis小助手

内核 Cgroups CFS调度器

Linux之tr命令

入门小站

Linux

C#多线程开发-线程基础 01

Andy阿辉

C# 多线程 8月日更 c#多线程

Rust从0到1-高级特性-函数和闭包进阶

rust 闭包 函数指针

Go- 包的使用

HelloBug

Go 语言

SSR 技术概述

编程三昧

SSR 8月日更 服务端渲染

公司刚来的京东架构师:看完我写的spring笔记,甩给了我一份文档

编程菌

Java 编程 程序员 计算机 技术宅

netty系列之:轻轻松松搭个支持中文的服务器

程序那些事

Java Netty 程序那些事

centos7中docker安装

消失的子弹

Docker Kubernetes 云原生

06. 第三次AI浪潮:有何不同?

数据与智能

人工智能

在线JSON转PHP Array工具

入门小站

工具

撒花!!金九银十喜提offer!秋招蚂蚁金服Java研发岗四面

编程菌

Java 编程 程序员 计算机 技术宅

蚂蚁金服+拼多多+抖音+天猫Java面经合集,金九银十Java开发校招社招福音!

编程susu

Java 编程 程序员 计算机 技术宅

比特币挖矿的未来只能依靠绿色能源?

CECBC

实现"双碳"目标,看下纺织业的智慧样本

百度大脑

人工智能

27岁到来之际,我在阿里实现了年薪40W+的小目标

编程菌

Java 编程 程序员 计算机 技术宅

内核热补丁,真的安全么?| 龙蜥技术

OpenAnolis小助手

操作系统 内核 热替换

架构训练营第 1 期 模块六作业

高远

微信业务架构&学生管理系统架构选型

John

Go- 包的制作

HelloBug

Go 语言 包的制作

京东三面惨遭被虐,关于redis,高并发,分布式,微服务一窍不通

编程菌

Java 编程 程序员 计算机 技术宅

区块链在供应链金融应用优势与四类常见模式

CECBC

适女化科技(二):让女性更安全的两条技术路径:软件硬件化与硬件软件化

脑极体

做了好几年Java开发,一直碌碌无为,如今靠着这份面试题跟答案,我从15K变成了30K

编程susu

Java 编程 程序员 计算机 技术宅

秒懂消息队列

yuexin_tech

消息队列

Spring的七大模块你了解吗?

4ye

Java spring 架构 后端 8月日更

python实现两台不同主机之间进行通信(客户端和服务端)——Socket

Python研究者

8月日更

轮询锁在使用时遇到的问题与解决方案!

王磊

8月日更

去哪儿网库存搜索在高并发场景下的探索

Qunar技术沙龙

技术 高并发 投票机制

LeetCode 每日一题「搜索插入位置」

陈皮的JavaLib

Java 面试 算法 LeetCode 8月日更

Vue进阶(八十六):iframe 结合 window.postMessage 实现跨域通信

No Silver Bullet

Vue 8月日更 iframe

叶亚明:合格CTO的六要素_语言 & 开发_EGO_InfoQ精选文章