京东商城李大学:技术驱动 京东十年
【CTO论道】京东商城李大学:技术驱动 京东十年
【CSDN报道】2013中国软件开发者大会(以下简称SDCC)于8月30-31日在北京新云南皇冠假日酒店举办。作为CSDN和《程序员》杂志倾力打造、千人规模以上的顶级技术盛会,今年SDCC 2013以“软件定义未来”为主题,来自于国内外一线的技术精英,就大数据分析与BI、架构实践、研发管理、IT基础设施与运维、产品与设计、开放平台等专题和参会者进行了深入的分享和探讨。此外,32小时编程马拉松、CTO论道论坛等量身定制的特色环节也受到了参会者的强烈关注。
京东商城高级副总裁 李大学
在CTO论道特色论坛上,京东商城高级副总裁李大学与二十多位受邀参会的国内一线技术管理者一起做了交流,并发表了题为《技术驱动 京东十年》的主题演讲。演讲中,李大学分享了京东十年来的成长历程,同时以京东为例分享了一些技术团队管理的经验。
以下为演讲精彩内容:
2008年我加入京东,见证了京东技术团队从30至3000人的成长历程,也见证了京东是怎么从业务为主的公司,变成技术驱动的公司。今天给大家做的分享将结合京东具体的事来讲。
关于京东技术
京东技术团队目前有超过3000名员工,拥有北京、成都、南京、沈阳以及宿迁等五大研究院。
京东的系统比较复杂,是一个完整的价值链,从前端的交易系统,到供应链,到仓储、配送、服务以及售后,全套的系统都是自己做。京东的全部业务都在线上运行。京东CEO刘强东现在一年时间里只有一两个月在国内,大部分时间在国外。他现在通过信息系统可以看到所有的生产情况,所有的数据一目了然。比如说仓储某个环节拥堵了他都知道。
京东的信息系统支持了它连续8年200%的增长,从04年的一千万,到今年年底肯定超过一千亿,一万倍的成长,背后靠的就是信息系统。
未来五年三大战略
京东正在发生一个蜕变,从一个中国型的电子商务公司,变成产业链的整合者,我们确定了未来五年的三大战略:
第一,继续自营电商业务。 实现规模化、海量SKU、低成本高效率的供应链服务能力。
第二,开放服务。 仓储开放、售后服务开放、呼叫中心开放、数据开放以及支付开放。基于物流核心能力全面开放,可以让第三方卖家把货运到京东仓库。配送也会开放。我们从今年开始接外单,就是第三方从其它渠道获得的商品,可以通过我们的系统进行配送。我们的配送覆盖三线和四线,实现了全覆盖。
第三,数据金融,就是基于大数据的数据金融服务。 这个包括去年就开始的供应链金融,以及即将开始的针对商家和个人的贷款。年轻人在京东买东西可以实现分期付款,不用付款可以先消费,根据我们大数据的分析可以判断他的信用能力,实现分期付款。
这三大战略的核心还是我们的技术驱动。
组织架构调整:研发体系分为九大模块四个层面
管理三千人的团队,我觉得组织架构优化是比较重要的一件事。以前京东的技术团队一直是智能化结构:产品部、研发部、测试部以及运维部门。而当我们的产品线和项目多了以后,人也多了,要分优先级就非常复杂,沟通也要非常多。
京东今年对技术团队做了调整,研发体系分为九大模块,基本上按客户、按照事业部的组织形式分的。
其中, 云平台 和 运维 两个部门主要是负责底层的网络服务以及顶层的技术架构问题,是提供技术支持的平台。同时研究统一的研发工具,包括统一的日志、统一的监控、统一的流程引擎,通过这个可以提高其他研发部门的效率,他们也不用重复开发组件了。所以这两个部门是提供基础设施,统一的工具的。
营销研发部 是针对我们的产销体系,主要是做网上营销的,产销体系是我们整个公司的火车头。我们围绕这个开发三大系统,第一个就是交易系统,保证交易系统的稳定,同时实现网站转换率怎么提升,用户体验怎么优化。第二个就是供应链系统,跟供应商连接,对订货量进行预测,这里面有很多控制手段,也是在该部门实现的。第三就是开放平台,要把整个供应链系统开放给第三方卖家。
运营研发部 是针对CIO体系的,就是订单生产体系,仓储系统、配送系统、客服系统都是由运营研发部负责的。
职能研发部 主要是职能体系的内部信息化,涉及诸如行政、人事、战略、部门等职能体系,也包括我们的财务部门。
营销研发部、运营研发部以及职能研发部这三大部门支撑了我们内部所有的业务。而其他部门则都是为这三个研发部门服务的。
大数据部 提供统一的大数据技术平台,我们是基于Hadoop的,在这上面做统一数据的采集、搬运、存储、处理、挖掘,以及在这上面开发一些增值产品。我们的搜索,我们的推荐系统,我们的开放数据服务都是在这个部门完成的。
移动部 负责客户端的建设,也是一个事业部的形式。目前京东客户端的装机量超过七千万,所以移动部也是发展非常快的部门。
研究院 是一个统称,我们有一个专门的部门负责全国研究院的建设。
最后,我们还有一个部门,像综合管理部,叫 技术研发管理 ,主要负责管理体系的建设。包括SQA,包括PMO,还包括职能体系,包括有一个IT服务台,包括24小时的监控以及运营。我们有一个系统电话,系统有问题的时候,外部和内部都可以打电话,进入处理流程,有专人处理,先由运营的人先处理,他处理不了的交给研发部门,把研发部门往后放,以前直接处理问题,研发人员是不愿意的,他愿意写代码,通过运营的部门,80%的系统问题都直接处理了。
我们整个结构调整,我觉得我们还是比较成功的,大大提升了客户的满意度。以前的客户跟我们很多部门沟通,现在只需要跟一个部门沟通,而每一个部门都是明确的,所以他的主要职责是提高客户满意度。
虽然我们有九个部门,但实际上我们把整个研发团队分成了 四个层面 :
第一层是技术平台 ,主要基于刚才谈到的云平台和运维这两个部门,打造基于云的技术架构,支撑上面所有的应用。
第二层有两块,第一块是大数据 ,我们把数据独立出来,不能让每个运营都处理数据,如果每个运营都处理数据的话,这些数据就乱了,而且这些数据可能形成独导,很难共享,很难在整个企业里面流通。 第二块是电商开放API ,我们把电商的核心平台建立起来,同时以API服务的方式进行服务,这对价值链长、流程复杂、系统很复杂的公司来说是很重要的。
第三层是应用平台。 因为有了刚刚的两层作为运营层,在上面做具体运营的事情就非常方便了。所以我们运营平台,包括我们自己的网站、移动客户端、内部的ERP及外部的ISV类型开发都可以调动电商核心API,同时相应的数据都进入大数据平台。而且这些应用都可以在应用平台上实现。
在市场上,跟企业架构有一些比较好的实践。大家可以对比一下,我们参照这样的模型打造我们的信息系统有很多好处。以前我们要开发一个需求的话,我不得不从前端的网站梳理,到产销系统,到仓储、配送。因为整个价值链很长的,这样的话很长,通过电商开放API就很简单了,我们事先协调好了,业务发展比较快,开发应用更适合业务部门快速变化的需求。
最后一层是研究院和研发管理部 ,这层针对的是消费者、供应商和卖家。
通过这四个层面,大家看到这里面有一个逻辑,最下面的实际上是我们的技术架构,解决我们架构的问题,数据这块起数据治理作用。API解决服务治理问题,开发的都是基于SOA的,这些服务需要治理,大家都使用这个服务的时候,这里面就会乱的,我们需要治理的平台。这三个关键把握住,我们上面的应用可以丰富多彩,我们的系统逻辑也会比较清晰。
给团队一个愿景:做中国最有影响力的技术团队
京东内部有一个愿景,原来的愿景是“让购物变得简单快乐”,今年做了一个调整,改成“让生活变得简单快乐”。针对三千人的技术团队,我们应该有一个自然的提法来激励我们的团队,叫“中国最有影响力的技术团队”。这个口号提出来以后,我们的研发人员挺高兴的,他感觉有一种自豪感,有一种成就感,觉得这个比较符合我们工程师的愿望。京东在研发的投入每年都有增加,在中国企业的研发团队里面,我们算是投入比较大的团队了。如果持续这样投入,我们研发人员有信心,把技术做的更好。我们的技术人员看到自己的系统在公司发展中不断的成长,他就会有很强的自豪感在里面。
30人的团队,管理者可能身体力行、以身作则,因为大家都看着你,你怎么干,大家跟着你,你要注意细节。300人的时候要建一个体系,起码要有项目管理,否则300人就困难,这是很重要的。但是到3000人的时候,我觉得要有一个愿景,没有一个愿景,这3000人的目标就不一样,很难团结起来。所以我给了我们一个愿景,做中国最有影响力的技术团队。
IT管理123:一个愿景、两个重点、三个体系
我分享下自己在IT管理方面的心得,我叫它们IT管理123。
我觉得MBA,EMBA这些理论都是生产线,一线工人从那里来的,这些管理理论对IT来讲现在都不成熟,所以在IT管理方面我们有一个探索。
首先,1是说一个愿景。 愿景就是原则,几百人的团队也要有愿景,有愿景以后就有使命感了,他觉得我应该做,而且我们如何做?第一我很自豪,第二我很有成就感,我出去的时候还很有价值。
其次,2是指两个重点工作。
一是文化 ,团队大了以后,文化、氛围是最重要的。
我们对整个公司来讲,比如说老刘,比如说我们公司其他业务部门的高管,他们能不能尊重技术,能不能形成尊重技术的氛围,这是我作为公司的技术总负责人要做的。我要打造一个环境,对这些专家尊重。
在研发部内部,我提了三个词, 第一信任,第二是分享,第三是成长 。
信任 就是授权,信任可以减少沟通的成本,所以信任,上级对下级,下级对上级,同级之间都要形成信任的氛围。比如说研发人员有可能出了一个事故,你是相信他是故意的,还是为了创新?京东定了一条规矩,因为创新出错的话,我们是宽容不惩罚的,你违背流程,你犯错是要惩罚的,宽容失败在研发体系里可以形成一个氛围,这个也是对我们员工的信任。
分享 方面,分享最佳实践。3000人团队里面一定有一些人在某方面做的很好,我让他们分享一下,其他人可以学习。我们谈到容忍失败,每次事故要写一个COE,我们可以从错误当中学习。从最佳实践学习,从错误当中学习都是为了分享,都是为了学习。去年我们开展了一个活动,代码人员每天都写代码,有一些值得骄傲的代码,我们让他们秀出来给其他人来看,这些代码不需要是一个系统,可能就是有点自己的心得,每周五下午搞这个活动,非常的火爆。第一写代码的时候,就想写代码,第二学习的时候,就想学这个代码,我们有一个软件可以将代码放在上面与大家分享。把分享做出来的,对研发人员是很重要的。
第三是 成长 ,因为研发人员普遍年轻,普遍希望学习和成长,我们就在内部打造成长的文化,包括给他们培训。京东的技术人员是分级的,T1-T6,T1是学校刚出来的,T2是毕业两三年但水平还不足的,我们让T3、T4给他们授课,每天培训,让他们成长。我们也从外面请一些老师给我们讲课。比如说今年做了一个培训是非常好的,因为学到一些架构和思维的方法,掌握了一些工具。我们从今天开始对研发经理也有一些培训,大家都踊跃参加,他们提升了以后,我们的生产效率就提升了,创新就增加了。
两个重点中第二个就是结构 ,有很多的问题是结构的问题。
团队到几千人的时候,要特别关注结构,刚才谈到人才结构,人才结构就是梯队的问题,以前下面的人才多,T3、T4、T5太少了。我发了微博招聘人,收了几百份简历,所以人才梯队是非常重要的。人才结构我们还做了一件事,把管理和技术分开,以前技术的人到一定程度必须到转到管理待遇才能提高,现在我们区分开,技术人员也分级,我们在结构上就解决了很多的问题。还有一个结构就是我们的组织结构,刚才说了,我们调整,按客户方向划分,这个也非常的成功。
最后,是3,三个体系。
第一个就是产品体系。 我们公司的体验,不管是消费者的体验,还是第三方卖家的体验,还是供应商的体验,还是业务内部部门的体验,都是产品驱动的。我们打造让产品经理说了算的文化。以前产品做什么,首先是业务部门绑架,业务部门说你这个东西做什么样的?产品经理记下来就搞,直接给研发做,这个东西有问题。另外我们的管理者想这个东西做好,会按个人的好恶指挥产品,这样把产品经理也绑架了。然后开发人员说这样设计麻烦,你这样做更好,又绑架了。三个绑架,三座大山把产品经理毁灭了。我们提出让产品经理说了算,不是管理者说了算,不是业务部门人说了算。比如说每个产销部门,都想定搜索排序的规则,但是我们内部有一个铁的规律,搜索的规则只为转化率负责。业务部门告诉你的是建议,产品经理就有自己发挥的空间,为最终用户的体验负责,这是非常好的。把产品体系打造出来,我们也成立了产品委员会,选出委员会的常务委员。
第二个是架构体系, 架构让架构师说了算,不是管理者说了算。管理者在专业方面认为自己很厉害,但实际是天花板,真正的专家是专业训练的,架构让架构师说了算,他们也有委员会,跟产品委员会一样,他们决定京东的架构是什么样的。发展轨迹,产品设计,架构应该怎么走,包括他们做架构设计的评审,所以他们权利也是很大的。这个体系也建立起来了,这个也是非常重要的。
第三个就是管理体系。
管理体系有两个, 第一个就是项目管理方面 ,就是加大项目经理的权力。一旦项目立项了,产品经理的权力很大,对项目,包括进度,质量,投入产出,都是直接负责的。项目部有奖金,奖金驱动项目,项目奖金怎么分配,项目经理有权力,并且很大,研发人员到项目里面,考核由项目经理说了算。我们有一个专门做项目管理的平台,在上面所有项目的情况一目了然。而且每个人,在项目里面,所有工作,都按人拉出来,按项目拉出来,所以一清二楚。所以大的团队要靠系统进行管理。
管理体系的第二个方面叫领导力系统。 三千人的团队,九个部门,每个部门三百人以上。三百人的话,管理难度也是很大的。主要是管人,我管的人可能不超过10个人,多了就没有办法了。管人的话必须要有影响力,要有领导力。我们在领导力这块是很难的,因为我们很多技术管理者,都是从专家转过来的,所以他用的语言都是计算机语言,都是专业的语言,他的EQ都不高,但是领导力系统,对EQ要求很高,特别是跟业务不沟通的时候。
管理123是我的心得,也是我们研发体系贯彻的东西,效果还是不错的。