DevOps实践|快速提升团队软件开发成熟度,提升研发效能
今天一个小伙伴问我,如何「快速提升」一个团队的软件开发成熟度?我犯难了。我个人理解一个团队的软件开发成熟度涉及的东西很多,但最简单最直接的方法就是发钱涨工资,可是估计很多公司不愿意,那就只有扣了。
快速提升的目标
短期制度解决
如果想短期快速提升,那就直接梳理好最关键点,制定规章制度,然后通过奖惩制度让大家遵守。这种做法成本不高,也许还能创收给团建攒点经费。这种做法优点就是见效快、直达痛点,但是副作用也很大,不厚道不人道,无法持久,毕竟工作合同里可没写扣钱的事儿。一天两天一周两周还行,时间一长人都跑了。1-2个月内可以考虑这种做法。
举个例子,服务稳定性问题。一段时间公司的某些服务经常出现问题,根因也有很多,比如上错代码、上线后配置没改、容器状态不对,告警误报等等。然后成立了一个服务稳定性小组,对每次事故进行复盘定责。人为原因直接罚钱,轻罚一线重罚领导。某种程度上解决了一些问题。但是时间一长这种方法就不灵光了,因为涉及到个人的收入,所以在最后查原因、影响范围的时候下面有的人就开始糊弄了,把影响功能、时间、人数、对外影响往轻了说。同事之间总不能天天拆台互相揭发吧?那这活还怎么干。尤其是大领导自己关注度降低,找个不熟悉、不深究、职位低的人来盯这事的时候,慢慢也就形成了虚设。(BTW,一把手业务助理做这事其实是个不错的选择。手拿尚方宝剑,领旨办案,且没有利益牵绊。)
中期流程和工具解决
但如果我们把时间放到3-6个月这个长度,那么可以选择的方法就很多。
我们以《百度工程能力白皮书》中涉及的 Server 端工程能力地图为例,涉及的 33个能力,如果想短时间内提高这么多能力是不可能的。3-6个月内挑一些关键的实践还是可以做一些事情的。
首先为每个团队指定一名全权负责人,也就是我之前的一篇文章提到的 FTO。效能不好 K 他就行,团队内合作不畅 K 他,结果不满意 K他。经过一段时间团队产研效能就有所提高。K 他之前记得授权,别瞎 K。明明自己没授权什么都揽在自己手里,结果出了问题说成是别人的问题就虾扯蛋了。
其次把团队的职责,团队中每个人的职责都明确出来,梳理出团队和个人的目标,让团队和个人都知道自己的权利和责任,知道自己的工作边界,知道自己的目标。不合理的团队组织架构和混乱不清楚的工作边界往往是产研团队效能低下的根本问题,且这个问题往往不能自查或不愿意承认。
然后,我们帮各个 FTO 梳理团队内一个个的流程和规范,对团队内的每个成员进行培训,把流程和规范融入到产研协作流程的过程中,针对目前最痛的点设置成检查点,从流程和关键点提高团队的研发效能。这个过程需要团队内的成员、团队外的管理人员都形成共识。
接着专人搭建工具和平台支撑流程和规范。所有的流程和规范不能只停留在嘴上,停留在纸面上,要有工具和平台的支撑。没有一站式的,就先单点满足。没有中文的,就先英文顶上。唯一的要求就是快。如果公司觉得这方面的投入值得,能采购商业软件那就太好了。把流程和规范落到工具和平台上,进行培训,让大家熟悉。
同时,我们要招人。招更能满足业务需求的各种人才。包括替换不合格的产品,能力不强的研发,没责任心的运维,经验缺乏的PMO,不负责的领导等。把团队的短板补上。
小文总结
简单总结下,短期通过制度解决痛点问题。优点是直接、快速,缺点是不可持续,效率低。中期通过流程和工具解决,通过不断优化流程,搭建工具和平台支撑流程和规范的落地, 同时不断地优化流程和改进工具形成正循环,劣势是需要时间需要人力物力的投入。公司的实力终究还是体现在人才上,不断提高人才质量和密度才是根本。
最后感谢「无散人」的提问,让我有机会回答,谢谢。
DevOps实践|快速提升团队软件开发成熟度,提升研发效能相关推荐
- 软件测试:保障软件质量的关键性关口——记中国工商银行软件开发中心北京研发_manok_新浪博客...
因为近一年来做金融行业的软件测试工作,所以转载了这篇工商银行开展测试工作的相关资料. 题目:软件测试:保障软件质量的关键性关口--记中国工商银行软件开发中心北京研发部的测试工作 作者:王冬 加入日期: ...
- 从 DevOps 到平台工程:软件开发的新范式
DevOps 是一种将开发和运营结合起来的方法,在应用规划.开发.交付和运营方面将人员.流程和技术结合起来.DevOps 使以前孤立的角色(如开发.IT运营.质量工程和安全)之间进行协调和合作.一直以 ...
- 最佳实践:怎样评估软件开发时间
作者 | DDI Development 译者 | 王强 策划 | 王一鹏 据统计,有差不多 70% 的项目都没能准时完成,你的项目也可能是其中之一.总是 delay 是不是很烦人?你也希望在满足市场 ...
- ESP8266 Non-OS SDK 开发之旅 基础篇① 初识 Non-OS SDK,史上超级详细手把手教小白20分钟快速搭建SDK软件开发环境,完成第一个例子Hello World!
文章目录 1.前言 2. SDK概述 2.1 SDK使用流程 2.2 ESP8266 HDK -- 硬件开发工具 2.3 ESP8266 SDK -- 软件开发工具包 2.3.1 Non-OS SDK ...
- DevOps落地实践:BAT系列:ALI:企业研发效能解决方案
BAT相关的DevOps解决方案或者产品到底有哪些功能,各自有哪些优势,着眼点和客户场景是什么,我们通过目前各自官方公布的相关信息来简单一探究竟.首先来看一下ALI的DevOps解决方案. 企业研发效 ...
- 基于Jenkins的DevOps流水线实践教程|2020全新制作|端到端研发效能提升
讲师介绍 课程寄语 我认为Jenkins是对我这些年运维经验的总结,起初我们运维同学都是编写脚本完成一些自动化的操作.而有了Jenkins我们可以将我们的运维经验与Jenkins设计理念融合完成自动化 ...
- 基于Jenkins的DevOps流水线实践教程|2020全新制作|端到到研发效能提升
讲师介绍 课程寄语 我认为Jenkins是对我这些年运维经验的总结,起初我们运维同学都是编写脚本完成一些自动化的操作.而有了Jenkins我们可以将我们的运维经验与Jenkins设计理念融合完成自动化 ...
- 快速理解各类软件开发过程模型(瀑布模型、螺旋模型、喷泉模型等)
快速理解各类开发过程模型(瀑布模型.螺旋模型.喷泉模型等等) 1.开发模型-基础概念 2.结构化模型 瀑布模型 V模型 3.原型化模型 快速原型模型 增量模型(演化模型) 螺旋模型 4.面向对象化模型 ...
- Jenkins 流水线 获取git 分支列表_基于Jenkins的DevOps流水线实践教程|2020全新制作|端到端研发效能提升...
讲师介绍 课程寄语 我认为Jenkins是对我这些年运维经验的总结,起初我们运维同学都是编写脚本完成一些自动化的操作.而有了Jenkins我们可以将我们的运维经验与Jenkins设计理念融合完成自动化 ...
最新文章
- HTML DOM Console对象
- Bootstrap 学习之js插件(模态框(Modal)插件)
- Django从理论到实战(part31)--Django数据库查询操作
- Android 4.1新增功能特性
- 判断浏览器设置相应的CSS
- Makefile模板的改进
- QT_UDP传输小结
- android 动态权限推送图标问题,「JPush」通知栏相关问题
- laravel5.6 邮件队列database驱动简单demo
- NLP情感分析笔记(四):卷积情感分析
- android monkey测试步骤,android Monkey 测试技巧
- redis 可视化客户端工具
- 亲测有效,使用postman进行并发测试
- JVM - 工欲善其事必先利其器之虚拟机工具(上)
- 原生对象、内置对象、宿主对象的区别
- java导出繁体字word,word繁体字转换
- Gradle dependencies 解决项目依赖冲突
- nfcwriter写入_NFC 标签联系人写入教程:Tagstand Writer
- java监听路由器数据_求如何用java读取路由器上的数据,介绍点资料
- 诺基亚再裁员Lumia表现不佳