阿里为何跑得这么快?5万名工程师研发效能提升的秘密!

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/yellowzf3/article/details/102735444

 点击“技术领导力”关注  每天早上8:30推送

阿里生意版图之大,不用多介绍了,业务飞速发展的背后,离不开工程师们的艰苦奋斗,虽然说996是福报,不免让人好奇,阿里5万多名工程师是怎么做到如此大规模的协作、高效的协同?

在今年的云栖大会上,阿里云资深技术专家-何勉,分享了《阿里巴巴研发效能提升及业务创新实践》,让我们对阿里研发效能提升及业务创新有了全面的了解。

分享分为三部分:阿里研发效能的挑战、落地实践和方法、整体解决方案。

01

超大型技术团队研发效能的挑战

640?wx_fmt=png

跟许多大型互联网公司一样,阿里研发效能的挑战在于:业务发展和市场竞争对研发效能的要求不断提高,研发效能随着业务及工程协作复杂度增加而降低。研发效能提升就是缩短这两者之间的距离。

02

互联网技术团队研发方法实践

640?wx_fmt=png

解决的方法不外乎,将大而缓的瀑布式开发,改变为小而快的敏捷开发,其中的实践包括:持续交付、DevOps、精益思想的落地。

这里需求提醒大家的是,别以为开发效能提升只是技术人员的事,一定要拉上产品经理、业务人员进来,要从需求源头进行效能提升(少提些不过大脑的需求、老板需求)。说实在的,根据统计,企业每年浪费在“低价值”需求上的开发资源,占总资源的40%以上,产品经理要把好第一道关。

03

效能提升的本质:顺畅、高质量地交付有效价值

640?wx_fmt=png

效能提升关注以下3点:

流动效率为核心,提升团队的持续交付能力。

用户价值为核心,规划和探索有效的产品。

长期质量为核心,沉淀优质软件资产和工程能力。

注重整体的优化,而不是局部的优化,以价值流动为重点,减少各环节的等待实践,不追求一时的效能提升,关注长期有效提升。

04

效能提升落地的方法和实践

640?wx_fmt=png

这副图生动地描述了一些技术团队协作效率的问题:部门之间建立起了部门墙,协作非常费劲,产品、开发、测试、上线各环节等待时间很长。

大家别笑,在国内大多数公司,都存在这样的现象,也许你的公司就是这样的。

05

以流动效率为核心,提升团队的持续交付能力

640?wx_fmt=jpeg

作为研发团队Leader,可以把日常开发每个环节的时间记录下来进行分析,如:从需求到开发的时间,开发到送测的时间,测试到上线的时间,看看哪个环节花的时间多,各环节之间等待时间多,那就是优化的重点,团队坐下来一项项列出来讨论,逐一改进。

06

前后职能拉动,端到端的价值交付过程

640?wx_fmt=png

将开发过程进行可视化,如上面的图,其实很多开发管理软件都有这功能,如Scrum的白板,就很清楚看到哪个环节block住了。

07

以组织和资源为核心,以用户价值为核心

640?wx_fmt=png

高效交付,不等于业务成功,所以开发要前置到需求讨论环节,做个懂业务的技术专家,这也是敏捷精髓之一:分工明确化,角色模糊化。

08

以用户价值为核心,规划和探索有效的产品

640?wx_fmt=jpeg

许多创业方法论中都提到:MVP设计,用最小可用设计去验证市场,看用户的反馈,基于数据和思考对产品进行快速迭代,形成创新闭环。

09

高效交付与持续高效

640?wx_fmt=png

局部的优化,改变不了全局;短期的高效,不等于持续高效。做“把时间当成朋友”的事,即:短期见效不一定快,但随着时间的推移,产生从量变到质变,这就是时间的力量。

有效的改进措施,比如:良好编程习惯的培养、对质量的重视、持续流程改进等等。

10

以长期质量为核心,沉淀优质软件资产和工程能力

640?wx_fmt=png

以长期质量为核心,沉淀优质软件资产和工程能力。从软件的架构治理入手,如微服务化、中台化,致力于长期有效的基础设施搭建。

形成完善的工具链建设,打造持续交付的工程能力。

11

研发效能提升之道

640?wx_fmt=png

研发效能提升包含三个方面:

流动效率,提升团队的持续交付能力。

客户价值,规划和探索有效的产品。

长期质量,沉淀优质软件资产和工程能力。

12

基于软件的分层解决方案

640?wx_fmt=jpeg

将以上研发效能理念,沉淀到管理软件当中,使规范得以落地,在超大型研发团队的效能提升中,进行规模化复制,系统化提升。

640?wx_fmt=png

总结一下,超大型研发团队,比如BAT等达到上万名工程师规模,研发效能的提升,要从研发效能思想、研发流程改进、研发工具建设等方面进行落地。

不同于传统软件研发效能提升的是,互联网追求一种“可控的乱”,如:Scrum里可能文档是滞后的、带伤上线,但是长期来看,这些问题是得到控制的,对业务的快速发展是有益的,难点就要于这个“度”的把控,有时候你要承受各方的压力。

如果觉得对您有帮助,请转发朋友圈点“在看”,您的支持是我们坚持写下去的动力!

大家在看:

1.
2
3.
4.
5.
6.

 -End- 


想看更多大厂技术干货分享?

关注“技术领导力”公众号

640?wx_fmt=jpeg

想加入社区,跟100位互联网大咖学习?

添加群助理Emma,注明“加群”

技术领导力社群

640?wx_fmt=jpeg

猜你喜欢

转载自blog.csdn.net/yellowzf3/article/details/102735444