蚂蚁金服 CTO 鲁肃:支付宝成就了我,我做了很多“拧螺丝”的事儿

阅读数:4 2019 年 4 月 10 日

他被誉为支付宝技术平台的奠基人之一,但是他却说“这还不是我心中最完美的架构”;他曾是支付宝史上最危机关头——停机发布 17 小时的救火大队长,但是在他看来,只是做了很多”拧螺丝“的事情。

他行事低调但是却信奉“此时此地,非我莫属”的豪气;他在支付宝有着灿烂无比的职业履历却仅仅认为自己是没有掉队的那个人。

他是程立(鲁肃),是我们本季《十年》技术专题纪录片中的第一位登场嘉宾,在 2009-2019 互联网技术十年发展的波澜壮阔中,他,是一位亲历者。

《十年》十集技术人物纪录片 | 第一集

程立(鲁肃),蚂蚁金服首席技术官。2005 年加入支付宝,是支付宝技术平台的奠基人之一,在支付宝与蚂蚁金服期间,主持支付宝各代技术架构的规划与基础技术平台的建设。2018 年,程立开始担任蚂蚁金服国际事业群首席运营官。

InfoQ:今天我们的主题是“十年”:希望能站在互联网技术发展的时间线上梳理出来几个重要的时间节点,如果用“2009 年到 2019 年是互联网技术 _____ 的十年”来造句,希望听听您的讲述!

鲁肃:过去十年,面向整个数字时代的关键技术一个接一个的出现,从被人们接受,到开始步入应用。2009-2010 年是云计算,2011-2012 年是移动,2013-2014 年是大数据,2015-2016 年是人工智能,2017-2018 年是区块链。在蚂蚁金服,我们把区块链、AI、安全、IoT、计算这几大关键技术称为”BASIC“。这五个关键词在过去的十年里面接踵而至,而且得到了所有人的理解。所以我觉得回首来看的话,过去十年是技术革命非常关键的十年:一次技术革命去改变一个真正的行业,完成所有技术的准备。

InfoQ:您提到“革命”这个词,是不是可以这么说:过去十年是互联网技术革命的十年,是互联网技术改变所有人生活的十年?

鲁肃:我们认为过去十年技术正在改变,但是你说它已经完成这个改变了吗?它才刚开始。

InfoQ:听说您小时候一直想做一个数学家,然后某一天忽然发现自己应该做一个程序员?

鲁肃:我读书读到硕士都是以做数学家作为梦想。读博士之后,我的导师他是一个做实践、做工程的老师,所以在他的熏陶下,他让我解决很多工程的问题。那个时候我做了一个选择:不是完全根据自己的兴趣去做一件事情,而是结合自己的兴趣和擅长。那时候我基本上就把注意力转到工程上了。

说到做工程的精神,其实小时候我印象比较深的就是我的父亲每个周末到实验室加班,就把我带到实验室。他会让我看非常大的激光器,一个激光器像一个房子一样大,要把它上面一个盖子盖上,要把螺丝拧上,拧上之后要严丝合缝,确保没有任何漏气。我就是负责拧螺丝的。一圈有几十个螺丝,要一个一个去拧,而且你不能够一次把一个螺丝拧死,要一圈一圈拧。那时候我爸说我拧螺丝拧的特别好。

InfoQ:好像很多 70 后、80 后小时候都想做数学家、做科学家。您觉得您现在做的事情和您父亲做的事情是一样的吗?

鲁肃:我的父亲他是个物理学家,他做了很多拧螺丝的事情。我读硕士期间做数学研究,数学必须非常缜密,从提出一个定理,到证明它对不对,可能过程很长。我们现在做一个大的系统,写一个没有 bug 的程序,也是很相似的。

InfoQ:所以可以说您后来也是在做”拧螺丝“的事情?

鲁肃:是的,我做了很多”拧螺丝“的事情。

InfoQ:您之前介绍过支付宝开发初期的一次重要转折,您经历过非常重要的一夜。可以再跟我们分享一下吗?

鲁肃:2004 年,当时淘宝要改造。这个项目是当时整个阿里巴巴最重要的一个项目,要用新的架构做面向未来的淘宝网。2005 年我加入支付宝以后,很自然的想要向团队证明自己。当时我的主管特别信任我,任命我做当时非常重要项目的主架构师。

这是我第一个做的项目,所以一开始做项目架构师的时候,我把我能想到的最好的架构、当时我懂的和我不懂的技术全部用上去。我想既然是这么重要的一个项目,它应该用最好的技术、最好的架构来做。

当项目进行到一个半月的时候,功能差不多开发到一半,有一天晚上加班以后一起吃饭。当时一个同事坐在我的边上,对着我主管说:你们设计的那个架构可能有问题,项目开发到现在,我们在里面加很多功能越来越难了,越来越容易出错。当时我的主管跟他说,鲁肃是这个项目的架构师,这个项目的技术他说了算,不要再有任何的怀疑,这个事就过去了。

那天晚上回去之后,我仔细想了想,认为他说的这个问题确实存在。而且,在这么重要的一个项目里面用了这么多新的技术,这是一件真正可靠的事情吗?差不多在凌晨一两点的时候,我开始正视这个问题:我认为这个架构确实是有问题。不但有同事说的问题,而且我们不应该用从未经过验证的技术去支持这么重要的一个系统。

所以接下来我也需要做决定:现在怎么办?

在凌晨三四点的时候,我决定要用新的架构。我快速搭了一个原型,用我最擅长的、最有把握的技术,做了一个演示系统。

早上八点到公司,我第一时间和主管说:马上叫齐项目组,我们开个重要的会议。会上我就说,之前这个架构有问题,我建议我们项目要改架构,改成一个更朴实的架构,用更可信赖的技术支撑,我根据这个架构做了一个 demo。会议开的非常高效,最后的结果是:第一,所有人支持用新的架构。第二,所有人会把他们自己之前的工作移到这个新的架构。这个会开完之后我特别感动。大家快速用新的架构完成了这个项目,在五月份把支付宝推到线上。

这个事情影响了我做架构的风格:我会偏实用主义,能够确保每个系统上线一定是最成功的方式。现在回想 2005 年如果当时做错一个决策的话,我的职业生涯也许可能是完全不同的道路,这个项目极大的可能会失败,对支付宝会有什么样的影响也不好说。这个事情也改变了我做决策的风格:做任何决策之前,先把“我”抛开。

InfoQ:感觉您和支付宝是互相成就的关系。

鲁肃:应该说是支付宝成就了我。整个支付宝发展的过程中发生过非常多重要的事情,我只在个别事件中起到关键作用。

InfoQ:至少,您是一个做好准备的人?

鲁肃:我更觉得是支付宝发展的过程中没有掉队的人。我觉得支付宝的发展永远比我想象的快,必须全力以赴才能够不掉队,你永远保持你的胜任和担当,其实这就是你的成长。

InfoQ:可以说是责任心?

鲁肃:对,我觉得是一种担当。从加入支付宝第一天起,我就感觉支付宝这个系统扛在我的肩膀上了。那时候系统非常的原始,特别在早期一两年,基本上三天两头出问题,而且很多时候出现在夜里,任何的问题都是你的问题。这个责任感早期建立起来,一直到后来都没有改变。

InfoQ:您有座右铭吗?

鲁肃:我自己本人其实并没有什么座右铭,但是阿里巴巴有很多土话,这些土话对我的影响非常大。有一句话土话叫“此时此地,非我莫属”,这个我觉得体现出整个阿里担当的精神,这种精神我个人觉得在我身上是有的,第一时间我会站出来。

InfoQ:在支付宝的发展当中还有没有其他印象深刻的事情?

鲁肃:2010 年,我印象是 1 月份开年会。当时支付宝的总裁讲完话之后,整个晚会的会场就黑了,突然一个声音响起,是我们一个客户的声音,客户在电话里面报怨我们的服务怎么不好,有什么问题。

那个时候我觉得特别震撼:那是我第一次听到一个真正的客户的声音!而且提出我们产品的问题。这些问题过去我们都知道,但我们不觉得它对客户有那么大的影响,但是那个时候听了这个,触动非常大。

然后灯亮了,马云先生走到台上说了一句话:“支付宝你做的太烂了,非常烂!”

这是阿里的风格,非常直接。说完,然后彭蕾上台说:“我会成为支付宝新的总裁。”

我印象她做了一篇演讲,她说:“我是一个女人,我有三个特点:第一个特点是爱做梦,第二个特点是小心眼,第三个特点是不讲理。”然后跟我们提了目标。当时用户在线支付要从支付宝网站跳到银行的网站上,这个成功率只有不到 70%。她说我要求大家把今年支付的成功率从 70% 做到 90% 以上。你们技术人员不要跟我讲做不到,我是不讲理的,你们一定要做到这个事。

年会开完,那年我们全公司就一个目标,就是怎么把这个数据从 70% 做到 90%,而不是非常宏大的做一个业务战略架构。在这个目标的驱动下,我们做了一个非常重要的创新:现在每天支付用的快捷支付,就是那时候创新出来的。由于快捷支付的出现,把它从 70% 不到变成 95% 以上,让移动支付成为可能。

InfoQ:这样听下来,其实对您作为一个程序员个体而言,2009 年到 2010 年对您影响最大的并不一定是云计算技术,而是这种意识层面的变化?

鲁肃:其实我写代码的时间很短:2004 年加入淘宝开始写一个可以给真正用户使用的代码(以前写的一些都是演示代码),到 2008 年我开始做架构师(那时候我们架构师是要求不写代码),所以我真正写代码的时间是四年的时间。所以 2009 年以后,我从一个写代码的程序员变成一个去思考技术战略的架构师,这样一个变化(比较大)。

InfoQ:技术出身的领导者有一些明显的特点,比如理想主义,比如技术决策力。您接触的技术出身的领导者和您所接触的非技术出身的领导者相比,他们有什么样的不同?

鲁肃:首先,我会觉得技术出身的人都偏理性,讲理;做业务的人基本上会不太讲理。刚才我举的彭蕾的例子,她是不讲理为主的。

所以在这种情况下,我觉得各有各的好处:做技术的人做决策,会是一个非常靠谱的决策,他说能行的基本上一定能行。但是他会有一个缺点:太靠谱了,就很难跳出来。

我自己从 2013 年开始做蚂蚁金服 CTO 的时候,才开始给团队设计一些不太靠谱的目标。一开始是完全没有感觉,但是到后面的话,我慢慢会找到一个感觉,就是怎么做到一个既看起来不讲理、但背后其实又是靠谱的决策。要做到这点,会需要你对这个系统有一个更深的理解。

打个比方,2007 年的时候我遇到 InfoQ 中国负责人霍泰稳,当时我跟他聊天的时候就说,那时候支付宝大概两三百万行代码,我说支付宝这两三百万代码就存在我脑子里,出现一个问题我脑子里就能跳出来:大概是什么地方、哪段代码出现问题了。

到 2009 年的时候,那时候支付宝规模大了十倍,我大脑完全没这个感觉了,我也不碰代码了。但那时候我对支付宝到底有多少个系统、当用户第一次点击这个系统会有什么样的状态过程,我是非常清楚的。所以那时候支付宝出任何故障,我会第一时间比较清楚知道哪里可能会有问题。
再到后面的时候,又有几个转型,从做架构师到管理团队,包括人在内的、组织在内的系统,到现在做商业的时候,对整个商业系统、对客户的价值、对客户有什么样的影响、对商业合作关系有什么样的影响,这是需要时间去积累的。

InfoQ:所以对于您个人来说,2009-2019 年是一个什么样的十年?

鲁肃:我觉得可能是一个不断蜕变的十年。

2009 年,我是支付宝的首席架构师,那时候我认为这是我的职业顶峰了,准备干到退休了。但是 2013 年的时候突然一个改变,我被任命为公司的技术负责人,这是一个很大的变化,又是一个重头开始,什么都得从头学。差不多又过了三到四年的时间,我开始慢慢胜任这么一个岗位,刚刚进入商圈,又被放在我不熟悉的地方:蚂蚁金服全球化的业务,又是一次蜕变。

技术每两年一次变化,当你刚刚开始对一个技术有感觉的时候,一个新技术出现了,你要重新了解它,理解它,而且你要知道它的影响是什么。对于我来说,挑战就是我不可能对技术真正有了解了。到现在为止,我都没有写过移动的程序,但是我必须很清楚的知道移动技术对商业的影响是什么。

InfoQ:您认为中国互联网技术未来的发展方向是什么?

鲁肃:预测未来我觉得挺难的,我谈谈我的期待。首先,当下对于技术的应用和掌握方面,我觉得中国的互联网公司已经不亚于世界上任何一家互联网公司了。中国可以领先做出很多的事情,这点我是特别有期待的。

同时,中国互联网走到这一步,它面临的问题是全新的,过去所有 IT 市场都没遇到过的问题会出现,通过这些问题驱动产生新的技术、新的生产力,甚至新的生产关系,这是我们可以期待的。我们可以预见,未来的五年、十年,由于中国这个土壤上原创的技术创新出现,我们也会看到有中国的技术大师,也许也会有图灵获得奖的出现,这是我们能够期待的。


十年意味着什么?萌芽枝繁,幼苗叶茂。2009 年,时任蚂蚁金服首席架构师的程立(鲁肃)在第一届 QCon 分享了《SOA 系统治理中的架构支持》,启发了很多技术人。转眼到了 QCon 十周年,身份变为蚂蚁金服首席技术官的鲁肃再次来到 QCon,担任 QCon 北京 2019 的联席主席。他今年关注哪些技术热点呢?