京东技术解密的前言

如题所述

第1个回答  2016-06-07

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

相似回答