度量开发人员生产力:17 家科技公司的经验总结

作者 | Rafiq Gemmail

译者 | 平川

策划 | Tina Gergely Orosz(The Pragmatic Engineer Newsletter 作者)和 Abi Noda(DX 首席执行官,DevEx 框架创建者之一)在 Pragmatic Engineer 上发表了一篇题为“开发生产力度量:真实案例分析”的文章。InfoQ 报道了 Noda 对 17 家知名科技巨头所使用的工程指标的调查结果。Noda 发现,位居前列的团队并不会大规模采用像 DORA 或 SPACE 这样的框架,而是会混合使用特定于组织的定性和定量指标。Noda 和 Orosz 从指标实现团队所寻求的结果倒推,提供了定义此类指标的建议。Noda 写道,他“采访了 17 家知名科技公司负责度量开发人员生产力的团队。”在这篇文章中,Noda 和 Orosz 重点调查了 4 类规模的组织,10 万员工的谷歌、1 万员工的 LinkedIn、1 万员工以下的 Peloton,以及 1000 员工以下的 Notion 和 Postman 等。所使用的指标范围从典型的 PR 和 CI 指标到谷歌系统性选择的指标。Noda 观察到,在实践中,“DORA 和 SPACE 指标是有选择性地使用的”,而不是全部采用。他写道,虽然调查显示“每家公司都有自己量身定制的方法”,但他相信“任何规模的组织都可以采用谷歌的整体理念和方法。”Noda 写道,谷歌的方法需要根据“速度、易用性和质量”这三类度量来选择指标。他写道,这三个维度之间存在着“紧张的关系”,“有助于揭示潜在的权衡取舍”。Noda 写道,谷歌使用“定性和定量度量来计算指标”,因为这提供了“尽可能全面的画面”。Noda 列举了谷歌使用的一系列信息获取方法,从满意度调查到“使用日志度量”。他写道:无论是度量工具、过程还是团队,谷歌的开发情报团队都认同这样的看法,即单个度量标准无法衡量生产力。相反,他们从速度、易用性和质量这三个维度来审视生产力。类似地,Noda 和 Orosz 描述了 LinkedIn 如何将季度开发者满意度调查与定量指标相结合。Noda 在文章中提到了 LinkedIn 开发者洞察团队使用的一系列指标。这些指标旨在减少“关键开发活动的阻力”。该团队使用的指标包括 CI 稳定性指标、部署成功率、p50 和 p90 构建时间,代码审查响应时间,以及提交通过 CI 管道的时间。Noda 描述了团队如何用定性见解来支持这种定量度量,并举了一个例子,将构建时间与“开发人员对构建满意程度”做了比较。LinkedIn 还使用“温莎均值(winsorized mean)”对客观数值指标进行了去噪:温莎均值的意思是,求出第 99 百分位数,然后把所有高于第 99 百分位数的数据点削减,而不是剔除。如果第 99 百分位是 100 秒,而你有一个数据点是 110 秒,则把 110 划掉,写上 100,现在,你计算出的(温莎)均值会是一个更有用的数字。Noda 写道,Peloton(代表 3000 到 4000 名员工的组织)已经从最初的“通过开发体验调查获得定性见解”发展到结合定量指标。例如,用前置时间和部署频率作为速度度量的客观指标。他写道,Peloton 的指标还包括定性参与度得分、服务恢复时间,以及代码质量(“250 行以下 PR、行覆盖率和变更失败率”的百分比来衡量)。在谈到 Notion 和 Postman 等规模较小的“扩张中”组织时,Noda 写道,这些组织通常专注于度量“可移动指标(movable metrics)”。他解释说,这是一个易受影响的度量指标,指标实现团队可以“通过其工作对指标产生积极或消极的影响来移动它”。这方面的一个例子是“交付难易度”。Noda 写道,这一指标反映了“认知负荷和反馈循环”,并且可以根据“开发者感受到的完成工作的难易程度”进行调整。另一个常见的可移动指标是“开发者因障碍和阻力而损失的时间占比”。Noda 描述了这个指标是如何体现其价值的:这个指标可以转化为钱:这是一个最大的好处!这使得商业领袖很容易理解时间损失(Time Loss)。例如,如果一个工程工资成本为 1000 万美元的组织通过一项计划将时间损失从 20% 减少到 10%,那么这将节省 100 万美元。考虑到此类工程指标的上下文特点,Noda 建议组织按以下几个步骤来定义指标:在任务声明中定义你的目标,解释“为什么会存在开发生产力团队?”“从目标出发,根据速度、易用性和质量来定义最上层指标”定义与“特定项目或目标关键结果”相关的“操作级指标”,例如,特定开发生产力增强服务的采用率Noda 通过示例指出,所选择的指标应该综合考虑“速度、易用性和质量”等维度。他举例说,如果目标是让开发人员更容易“交付高质量的软件”,那么指标就应该包括“感知交付速度”、“交付难易程度”和“事件发生频率”。Orosz 和 Noda 的这篇文章是继“回应 McKinsey:衡量开发者生产力?”之后发表的又一篇文章。在之前的文章中,Orosz 与 Kent Beck 合作向 Mckinsey 的文章“是的,你可以衡量软件开发人员的生产力”发起了挑战。Mckinsey 的文章提出了所谓的“以机会为中心”的指标,“用以确定如何改进产品交付方式以及改进价值。”这篇文章讨论了基于 DORA 和 SPACE 的开发人员生产力度量,内容包括鼓励领导者优化个体开发人员效率的建议,以及一个“非编码活动(如设计会议)”的例子。该文提出的指标包括跟踪“个人贡献”和度量“人才能力得分”。Beck 警告说,衡量个人生产力而不是交付结果是有风险的,他分享了自己看到这些指标变成“用金钱和地位来激励改进度量标准”的经历。他表示,虽然这可能会导致“行为改变”,但它也会受到游戏化的影响,变成激励“以创造性的方式改进这些度量标准”。Beck 和 Orosz 鼓励领导者把重点放在衡量“影响”而不是“工作量”上。Beck 特别建议,这样的度量标准只能用于被度量之物的持续改进反馈循环,而不应该用于其他任何东西。他还警告说,滥用衡量个人的指标会导致安全问题:要清楚你为什么要问这个问题,以及你和被度量者之间的权力关系。当有权力的人度量没有权力的人时,结果会失真……在哪个层面收集数据就在哪个层面分析,从而避免不当激励。我可以分析我自己的数据,而我的团队可以分析他们自己的汇总数据。Noda 还提醒说,如果是 CTO、VPE 或工程总监级别的人需要提供开发人员绩效指标,最好是确保报告处于相当的层面上。Noda 建议选择代表“业务影响”、“系统性能”和“工程组织”级“开发效率”的指标,例如项目级指标“用户 NPS”和“周时间损失”。Noda 建议高层领导:在这种情况下,我建议最好是重新定义问题。你的领导团队想要的并不是完美的生产力指标,而是可以进一步确认你是他们工程投资的好管家。在对 McKinsey 报告的回应中,Orosz 和 Beck 提醒说,“人们会优化被度量的东西”。他们引用了古德哈特定律,即“当一项措施成为目标时,它就不再是一项好措施。”原文链接:https://www.infoq.com/news/2024/01/engineering-productivity-metrics/

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,839评论 6 482
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,543评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 153,116评论 0 344
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,371评论 1 279
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,384评论 5 374
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,111评论 1 285
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,416评论 3 400
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,053评论 0 259
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,558评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,007评论 2 325
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,117评论 1 334
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,756评论 4 324
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,324评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,315评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,539评论 1 262
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,578评论 2 355
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,877评论 2 345

推荐阅读更多精彩内容