研发效能的思考总结

简介: 很多时候,我们一直在思考如何高效支撑业务这个课题上。阿里技术分享平台或者网上都有非常多的文章分享,每个TL针对自己团队的状况也有一套自己的方法论。本文作者将结合自己所面临的状况,把自己的思考总结分享给大家。

image.png

作者 | 天蓉
来源 | 阿里开发者公众号

前言

在谈效能之前,我想先谈谈作为一个技术人或者技术TL,研发的核心价值是什么?

之前看了一篇文章,比较有意思,分享一下观念:

  • T外包公司:最核心的竞争力不是技术,而是快速响应、资源调配整合、项目成本控制等方面。
  • 企业信息化公司:研发的核心价值有三个层次:第一层是运用技术更好的去支撑业务;第二层是用技术推动业务,用自身业务经验(服务很多客户)帮助客户;第三层是去用经验积累去影响行业。
  • 解决特定场景和问题的产品公司:核心价值就在于技术,专注与做技术深度。

那我们的核心价值是什么?

(1)高效支撑业务:一个是支撑,一个是高效

  • 支撑:对我们的要求就是:阶段性与业务目标,落地产品对齐。
  • 高效:研发效能的思考落地。用数据说明我们的价值

(2)用技术影响行业:这个需要持续的积累和思考。

(3)建技术壁垒和技术基建,确保系统稳定,业务健康和持久发展。

很多时候,我们一直在思考如何高效支撑业务这个课题上。阿里技术分享平台或者网上都有非常多的文章分享,每个TL针对自己团队的状况也有一套自己的方法论。今天我结合自己所面临的状况,把自己的思考总结分享一下。

个人思考

从几个维度分别进行思考:

1、研发的流程效能:拆分阶段,发现关键问题,提出方案

1)需求阶段

问题:需求反复,需求不清晰,需求争议

解决方案:

(1)确保需求的有效期,明确业务价值和需求范围,并确保需求理解的一致性。

(2)需求内容,先小范围内沟通对焦;等需求讨论清晰,再拉落地相关同学参与。

(3)需求有争议时,为避免反复,拉上相关同学一起对焦。

(4)日常需求,定期排期,通晒。

2)研发阶段:这个在研发的生产效能单独说明。

3)联调与测试阶段:

问题:联调效率低,环境不可用,提测代码质量低

解决方案:

(1)前后端分离,各自具备Mock的能力

(2)日常环境治理,降级系统服务的依赖,确保测试环境问题

(3)基准测试用例,冒烟测试,自动化脚本测试,确保提测质量。

4)发布阶段:

问题:发布频率高;定位问题耗时;部署系统时长

解决方案:

(1)对同一时间的发布系统做适当合并。

(2)与业务约定发布频率,控制发布周期。

(3)系统依赖治理,缩短部署时长;并提前打包

(4)针对排查问题耗时,提供相应的问题排查工具。

2、研发的生产效能

针对研发的过程生产,我们从如下几个方面去提升研发效能:

(1)全链路技术规范:

image.png

每一个过程,通过规范文档统一标准,并通过宣传和考试的方式,让大家都熟知内容。并通过典型案例通晒,强化规范内容的价值。

(2)全链路业务可配置

  • u页面可配:表单页,列表页,详情页,单据页等中后台页面可配置。

    • 典型案例:宜搭的页面搭建
  • u逻辑可配:业务参数可配置;业务规则可配置;

    • 典型案例:类目特征;
  • u模型可配:用元数据方式定义数据表或业务模型+扩展字段两种方式

    • 典型案例:类目属性 ;NBF建模平台
  • u服务&流程编排:基于原子服务能力进行二次组合。

    • 典型案例:AECP的服务编排;NBF的服务编排等

基于上诉的原子工具能力,再结合产品工厂和解决方案能力,把横向和纵向的业务配置化能力链接在一起,形成一个分层的全链路业务可配置视图。

image.png

(3)统一横向支撑工具

拉通团队内部共性的支撑工具,共建一份。比如excel批量导入导出,审批流,通知工具等。

(4)非功能性代码

  • 应用脚手架:一键生成应用工程,包括依赖的jar包等。
  • 代码规范的模板:错误码模板;日志模板;工程结构等
  • 中间件隔离层:包括使用的案例
  • 通用工具类:外部开源的工具类;业务抽象的通用类;自研抽象的通用工具类;
  • 业务标准拦截:用户登录;服务异常处理;dao的执行时间等
  • 稳定性:限流;应用自检;

把所有应用的共性代码抽象,沉淀为jar,在工程中默认引入。

(5)部署交付:部署手册指导;统一的问题排查工具;

(6)接口文档化:web层统一遵循swagger规范;能力中心/工具遵循接口规范的文档和client的使用案例说明等。

(7)系统协作的清晰边界

我们在落地过程中,往往会存在系统调用,系统依赖等问题,建议在启动初期,把这些关键问题定义出来,然后寻找TL或pm协调解决。

3、研发的协作效能

通过流程规范和模板,约定大家的协作模式

1)日常答疑的协作流程

image.png

2)项目过程管理

image.png

通过如下战役模板,同步项目进展:

image.png

3)日常需求排期

约定需求排期周期,固定时间,并沟通需求通过协作管理工具。

后续可通过协作管理工具,分析统计数据。

4、研发的人员效能

(1)学习与培训:

通过持续的学习,或借力其他团队的方式,提升技术水平。

通过沉淀团队规范,文档,案例等方案,让大家补齐知识。

通过复盘总结,沉淀典型案例,内部分享,避免重复采坑。

(2)考试

光学习肯定是不行的,还需要通过考试的方式强化。可以使用这个工具:阿里在线考试系统。

效能指标

制定过程的指标数据,每月通晒与对比,分析数据,定位效能问题。关键指标可参考:

(1)需求交付周期,需求交付数,项目数

(2)代码提交量

(3)Bug数

(4)线上问题与故障

总结

通过优化研发过程,并有明确的数据量化,证明研发对业务的价值。


技术人如何打造个人品牌影响力?五大顶级创作者独家传授!

开发者社区联合InfoQ特别策划《技术创作训练营》,2位金牌导师+5位顶级作者独家传授写作方法论,带您开启高质量技术创作之路。

相关文章
|
新零售 测试技术 持续交付
阿里如何定义团队的研发效能?
作者:何勉,阿里巴巴研发效能部资深技术专家 相关阅读:都996了,研发效能还是提不起来,关键在这里 因为身处研发效能部,我接触了公司很多产品技术团队。他们几乎都把研发效能提升列为了本财年的重要目标,大部分还为此成立专项。
18519 0
阿里如何定义团队的研发效能?
|
3月前
|
开发框架 运维 Cloud Native
核心系统转型问题之提升研发效能和保障研发质量如何解决
核心系统转型问题之提升研发效能和保障研发质量如何解决
|
搜索推荐 测试技术
持续提高软件研发团队效能
提高软件研发团队效能是一个持续的过程,想要快速提高效能的实践几乎都是以失败告终。
171 0
|
6月前
也谈研发效能
也谈研发效能
|
人工智能 运维 Kubernetes
深度 | 从DevOps到BizDevOps, 研发效能提升的系统方法
研发效能提升不知从何下手、一头雾水?阿里资深技术专家一文为你揭秘研发效能提升的系统方法
4279 1
深度 | 从DevOps到BizDevOps, 研发效能提升的系统方法
|
运维 自然语言处理 Cloud Native
Severless 应用研发效能再提升的探索 | 学习笔记
快速学习 Severless 应用研发效能再提升的探索
Severless 应用研发效能再提升的探索 | 学习笔记
《侯馨然——敏捷协作助力实现业务战略 阿里巴巴研发效能实践日》电子版地址
侯馨然——敏捷协作助力实现业务战略 | 阿里巴巴研发效能实践日
203 0
《侯馨然——敏捷协作助力实现业务战略  阿里巴巴研发效能实践日》电子版地址
|
数据挖掘 BI 持续交付
看懂这5幅图,研发效能分析和改进就容易了
作为 CTO 或企业管理者,我们如何去了解和衡量研发团队的研发效能呢?作为 PMO 和效能负责人,我们该从哪几个维度来回答关于研发效能的问题呢?如何通过效能数据分析,帮助企业管理者透明化研发效能水平和变化趋势,分析效能问题根因、指导改进行动、衡量改进效果。
2403 0
看懂这5幅图,研发效能分析和改进就容易了
|
运维 Cloud Native 数据可视化
2018-2021,60+篇阿里研发效能提升干货,都在这里了
今天,正值2021的最后1天,我们精心盘点了2018-2021连续3年来,云效团队在研发效能提升方面输出的所有干货,希望对大家有所帮助。
4919 3
2018-2021,60+篇阿里研发效能提升干货,都在这里了
|
机器学习/深度学习 人工智能 算法
解密蚂蚁研发效能:如何用数据驱动效能提升?
本文整理自蚂蚁金服解决方案架构师添棋在「中国DevOps社区杭州第3届Meetup」上的分享《研发洞察:如何用数据驱动效能提升》,将围绕决策辅助和研发辅助两个方向,详细讲解在蚂蚁金服内部如何基于AI、数据技术,洞察研发效率,提供面向一线研发和团队TL的提效解决方案
1069 0
解密蚂蚁研发效能:如何用数据驱动效能提升?