敏捷开发转型 7 个月,4 小时的活儿 24 分钟搞定

发布于:2020 年 4 月 23 日 17:39

敏捷开发转型7个月,4小时的活儿24分钟搞定

这几年我在 IBM 做敏捷教练和咨询顾问时,我经常会思考 3 个问题:

  • 程序员的核心能力是什么?
  • 什么决定团队整体效率和交付质量?
  • 为什么华为、腾讯这样的大厂,这两年都在做敏捷转型?

当时我发现大多数公司团队成员,这里面不乏一些大厂的程序员,平时会刷题、懂算法、做架构、写代码,但对于理解需求、拆分任务、编写测试、高质量的代码实现——这些基本功,反倒不重视。

为什么有人产出低、有人产出高?为什么有 10x 程序员?我觉得效率低的核心原因就四句话:观念落后、固守陈规、埋头蛮干、不找方法,这是典型的螺丝钉思维。

有竞争力的开发者是什么样子的?

我最早接触敏捷,是源于一位做开发的朋友。他就属于那种效率极高的,大家一个礼拜的任务他 2-3 天就能做完,代码质量高 bug 少。最主要的是,他除了写代码以外,有足够多的时间研究新技术,指导其他同事,在团队中口碑极好,后来还研究上了管理,听说这家伙后来做了首席架构师,还兼任团队 Leader。

他有个习惯,每次写代码之前都会仔细想一想需求,想好后先写测试用例代码,再动手写代码。一旦写代码就特别快,一气呵成。

那时我偷偷问他,“你写代码之前还要写测试,多麻烦啊,怎么还能写那么快那么好?”他眨巴着眼睛,一脸坏笑:“代码写得快靠得是思考快,而不是敲字敲得快,构思好了再写不就是记录自己想说的话吗?再者,我先写测试后写代码,磨刀不误砍柴功,好多问题在前面都解决了。”

我再看他写的代码,简洁优雅,顿时羡慕得不得了。他告诉我,“这就是测试驱动开发,敏捷的核心技术实践之一。”他改变了我对程序员的认知,也改变了我对这项工作的认知,原来厉害的程序员不只是撸代码啊。

我一直热衷于探索研发管理的效率、效益和精髓。带着疑惑,加之当时公司也确有敏捷方面的需求,我从此开始研究和实践敏捷开发。刚接触的时候我觉得理念很好,但有些理想化,那时我并没有从内心接纳敏捷。

随着过程推进,我逐步感受到了敏捷带来的好处,尤其在团队管理方面,敏捷为我省去了大量的时间。

我自己在深入进行敏捷实践的同时,接触了很多国内的研发团队,这些团队的规模不等。他们的共同特点是很努力,但也存在很多问题。比如:

  • 初创团队,没有任何成熟的管理实践,想到哪里做到哪里,研发管理相当混乱;
  • 有的团队已经经历了前期的混乱,想着要正规一些,就倾全公司之力引入 CMMI,导入瀑布流程,导致整个公司流程过重,交付速度受限制,三个月甚至半年才上一个版本,业务部门相当不满意,项目团队成员也怨声载道;
  • 有的团队听说现在流行的方式是敏捷,于是拿书来看,自己琢磨,炮制了一套敏捷流程,结果根本不适合自己团队的业务模式。

同时,程序员们普遍有一些困惑:他们很关心现在的研发管理趋势,当公司引入敏捷后,自己却不明白工作跟以前相比有何不同,也不清楚自己在整个开发过程中的角色和定位,个人的价值没有得到充分展现。

如果你想成为技术 Leader,敏捷作为一种变革,带来挑战的同时也会带来新机会,不仅要懂,还要比别人领先一步。

一些一线和中层管理者也会担忧:工业革命的时候,机器在很多岗位上取代了人,现在敏捷来了,强调团队要自组织,我的岗位会不会也被取代了呢?敏捷来了之后,是不是管理方式上也会有新的变化,到底应该怎么改变自身的管理风格才能更好地适应它?

作为敏捷咨询师,我给上百家公司做过分享和敏捷教练,目睹了各种各样公司在推进敏捷开发过程的疑难杂症,我一直想把自己的经验总结出来,帮助敏捷团队和个人真正解决实践中的痛点,于是我和极客时间团队决定打磨一个把敏捷讲透的课程。

现在市面上有很多关于敏捷的书,会讲一些基础知识和理论,但是敏捷毕竟有很强的实践性,只了解理论是不够的。以我个人的经历来讲,想要真正理解并接纳敏捷,你需要真实的案例来辅助你对它的理解。

本文转载自技术琐话公众号。

原文链接: https://mp.weixin.qq.com/s/_H0fr6n8LT6LBelM9ThdDw

阅读数:101 发布于:2020 年 4 月 23 日 17:39

更多 文化 & 方法、语言 & 开发、最佳实践 相关课程,可下载【 极客时间 】App 免费领取 >

评论 (1 条评论)

发布
用户头像
业务一来个紧急需求,你还有时间测试驱动开发,上来就copy代码了
2020 年 08 月 05 日 07:37
回复
没有更多评论了
  • 初用敏捷:必须从组织架构入手吗?

    当一家公司决定采用敏捷开发方式时,其组织架构往往需要做出变动。敏捷的工作方式同时会伴随着团队和管理方式的新实践,并且往往会影响到组织架构文化及心态。这些方面都是相互关联的,但对一个公司来说,同时改变各个方面的挑战太大。因此,问题归结到当开始向敏捷迁移时,首要关注点在哪里:文化、实践还是组织架构?下面让我们探索一下当从改变组织架构着手时会发生些什么。

    2014 年 12 月 17 日

  • 敏捷为什么会失败之「PA-SA-WAKA-DA」理论

    行于敏捷或形如敏捷,听起来不同,其实它们非常类似,区别只是在于用法。

    2020 年 5 月 20 日

  • 开篇词 | 程序员解决的问题,大多不是程序问题

    如何减少偶然复杂度引发的问题,让软件开发工作有序、高效地进行,这正是我希望通过这个专栏帮你解决的问题。

    2018 年 12 月 24 日

  • 开篇词 | 你为什么需要学管理?

    与其说管理是一个职位,倒不如说管理是一组能力,是每个人职业发展中都绕不开的话题。本专栏会为你阐释管理的方方面面,从而让你心无旁骛地走上管理之路。

    2018 年 8 月 13 日

  • 敏捷开发啊?真的假的?

    全世界人民喜迎敏捷开发:但是敏捷开发真的引领开发者到水草丰美之地了吗?Bullet Id Inc.的CTO,James Williams业界的怪现象提出了犀利的批判。

    2017 年 10 月 19 日

  • 第五届敏捷中国大会现场采访郭晓和张为民

    10月14日至15日举行的第五届敏捷中国大会由ThoughtWorks主办、InfoQ全程负责票务。本次大会主要对在企业中推行敏捷实践、敏捷转型等方面作更为深入的探讨。InfoQ编辑在大会现场就敏捷、云计算等相关话题和ThoughtWorks中国区总经理郭晓、中国移动研究院项目经理张为民等进行了简短的交流。

    2010 年 10 月 16 日

  • 填坑指南:填好这 4 个坑,快速做对敏捷

    在推进敏捷过程中你会踩到很多坑,填坑时既不能浅尝辄止,又不能急于求成,只要稳扎稳打、持续改进,你就能成为一名填坑专家。

    2020 年 1 月 6 日

  • 视频丨包不同的沙雕敏捷之砸锅卖铁买兰博

    《包不同的沙雕敏捷》故事主要讲述立志成为敏捷大咖的技术小白包不同在敏捷工作中的日常,与同事之间温馨搞笑的生活故事。

    2020 年 7 月 30 日

  • 高效程序员的 45 个习惯:敏捷开发修炼之道(1)

    对敏捷开发的三种误读。 1、敏捷就是追求快,越快越敏捷。所以可以只写代码不写注释、不写文档。 2、敏捷迭代就是尽量做到最小版本上线,每天上线的版本越多越敏捷。 3、敏捷是那些厉害程序员才能用到的技能。初学者用不会。

    2020 年 8 月 16 日

  • 第 78 讲 | 陈晨:团队重组过程中踩过的坑

    团队重组的时候,一定要考虑到人心,多多跟团队成员做深度沟通,在可能的情况下,尽量照顾到他们的需求。

    2018 年 8 月 28 日