一项来自 Atlassian 和 DX 的新研究表明,管理者对开发人员需要什么才能保持高效和快乐一无所知。
译自 Why Do Developers Lose 1 Day a Week to Inefficiencies?,作者 Jennifer Riggins。
根据 一项新调查,管理者对开发者需要什么才能保持高效和快乐一无所知。
根据调查,开发者每天会浪费八个小时——每周浪费一个工作日——在很大程度上是可以解决的低效问题上。
是什么阻碍了他们?是他们自己的管理者。
周一发布的关于开发者体验 (DevEx) 的报告,由 Atlassian 和 DX 联合发布,发现开发者和 IT 管理者对哪些因素对开发者生产力和工作满意度影响最大存在着巨大的差距。
研究人员采访了大约 2150 名 IT 管理者和开发者。很明显,管理者在没有征求开发者意见的情况下,就做出了关于开发者体验的决定。
这对代码和公司稳定性来说是一个风险。事实上,几乎三分之二的开发者至少考虑过,当他们对开发者体验不满意时,就会离开工作岗位。
而且,把事情做好刻不容缓:76% 的受访组织表示,他们计划在一年内增加对 DevEx 的投资。但如果没有适当的衡量标准和开发者反馈,这一切都将是徒劳。
The New Stack 采访了 Andrew Boyagi,Atlassian(一家协作软件公司)的 DevOps 布道师主管,谈论了这种巨大的分歧,以及如何在最需要的地方获得可操作的反馈和衡量标准。
“每个人都同意开发者体验很重要,但很明显,开发者并没有得到授权,”Boyagi 说。他补充说,调查结果表明,“很明显,他们没有得到授权,他们没有做最好的工作所需的条件。但这两个群体对他们为什么没有得到授权的看法存在着巨大的差异。”
事实上,开发者和他们的管理者都同意开发者体验很重要,是留住人才的关键,63% 的开发者表示,这是决定他们是否留在当前职位的重要或非常重要的因素。
然而,虽然 86% 的技术领导者认为,改善 DevEx 对吸引和留住最优秀的技术人才至关重要,但不到一半的开发者认为他们的组织真正将此作为优先事项。
开发者在日常工作中的体验与管理者关注的重点之间形成了明显的鸿沟。
只有 44% 的 Atlassian 和 DX 调查的开发者认为他们的领导者会意识到导致他们每周损失八个小时生产力的低效问题,而只有 23% 的开发者认为他们对改进付出了足够的努力。
报告发现,技术债务、糟糕的 文档 和缺乏 深度工作 时间是 DevEx 最大的破坏者。开发者表示,这八个小时的损失大部分是由于以下原因:
- 技术债 59%
- 文档不全 41%
- 构建流程 27%
- 缺乏深度工作的时间 27%
- 缺乏明确的方向 25%
这与其他调查中报告的其他低效数字相一致,例如 技术债务如何降低创新成本。Google 的 2023 年 DevOps 状态报告 (DORA) 呼应了内部文档的重要性,发现高质量的文档对性能的影响可以达到 12.8 倍。
StackOverflow 2023 年开发者调查的结果也证实了这一点,该调查发现几乎所有 开发者每天至少要花半小时搜索 答案,例如谁拥有什么。
这些对 IT 管理者来说并不陌生。
根据调查结果,工程领导层认为开发者日常生活中复杂性的主要原因是:
- 人员不足和承担他人的工作 48%
- 开发人员从事编码之外的工作,例如测试、安全、操作和维护 47%
- 新技术需要更多的培训和知识积累 47%
- 在诸多工具之间进行上下文切换与切换 43%
- 与其他团队的协作,这本可以通过工具来避免 43%
“这里没有发生什么阴谋,”Boyagi 说。“领导者希望赋予他们的开发者权力,让他们快乐,让他们高效。但当他们不知道如何做到这一点时,就会成为一个巨大的问题。”
这会导致高流动率:“招聘和入职新工程师是有成本的。但同时,当你考虑到那些没有离开的员工所承受的巨大生产力损失,因为他们要承担那些离开员工的工作,这会进一步降低开发者的满意度。” 除此之外,他还继续说道,那些最了解代码及其上下文并能提高他人工作效率的开发人员的机构知识正在流失。
“领导者真正理解团队面临的挑战非常重要,”他说,“他们应该优先解决这些问题。”
例如,大多数开发人员将技术债务视为导致沮丧和效率低下的首要原因,但这似乎并没有引起管理层的重视。如果技术债务没有被列为优先事项,那么自上而下的持续发布功能的压力就会继续存在,而通过重构和迁移来偿还债务的时间将不会被给予。
仅仅因为人员不足没有进入开发人员前五名,并不意味着它不会影响开发人员的生产力。但 Boyagi 说,“当你考虑有限的投资预算来改善开发人员体验时,你需要确保将投资用于能够产生最大影响的事情。”
在过去几年中,开发人员体验投资的很大一部分流向了 平台工程 和生成式 AI。
当你询问 AI 时,管理层感知与开发现实之间的差距会扩大。
Atlassian-DX 开发人员体验现状调查发现,领导者认为 AI 是 提高开发人员生产力 和满意度的最有效方式,而高达三分之二的开发人员尚未看到任何显著的 AI 生产力提升。
“我和一些全力投入 AI 的领导者谈过,”Boyagi 说。“他们说他们大部分用于开发人员体验的预算都投入到了 AI 上,如果它能解决他们遇到的问题,这可能是一件好事。
“但同样,这种错位会导致人们投资错误的领域,即使是出于最好的意愿,也无法真正改善他们组织中开发人员的体验。”
这并不是说开发人员不想要这种努力。只是,同样,这种努力与他们的体验无关。
问题的一部分在于,目前开发人员 AI 的很大一部分是关于生成代码——开发人员想要花更多时间做的事情,而不是更少。事实上,开发人员的一个常见抱怨是他们没有足够的时间进行编码。
根据包括 全球代码时间报告 在内的许多资源,开发人员平均每天花不到两个小时进行编码。事实上,研究表明,开发人员的好日子 的定义是花更多时间进行编码。
厨师希望有人通过切菜和洗碗来减轻单调乏味的工作。他们不想要一个会夺走烹饪乐趣的忍者搅拌机。Boyagi 将此比作一个希望 AI 编写文档 以增加——而不是减少——在编写代码的乐趣上花费的时间的开发人员。
同样,虽然技术债务位居开发人员抱怨清单的首位,但开发人员并不想花时间偿还它。GenAI 已经在解释复杂的代码库、协助云迁移和突出重构优先级方面 具有有趣的应用。
当应用于更无聊和令人沮丧的开发人员工作(而不是编写代码)时,AI 生产力提升就会被释放。
对于平台工程和生成式 AI 来说,代表你的开发人员做出决定——而不是将他们视为客户,进行演示和试点,并征求大量反馈——是失败的秘诀。这可能是为什么两者现在都处于 Gartner 的幻灭谷 中,而开发人员赋能仍然是优先事项。
如果工程是一门科学,那么理所当然地,你无法改善你没有衡量的东西。
“我们发现,投资于理解和改善开发人员体验是一个良性循环,”Boyagi 说。
现在,组织用来 衡量开发人员生产力 的因素非常不稳定:
- 编写、删除或更新的代码量 41
- 部署频率 40
- 完成的用户故事点数 39
- 工作时数 38
- 变更失败率 37
麦肯锡开发者生产力框架的主要批评之一是它认为生产力衡量指标旨在激励开发者编写更多代码。强调编写的代码行数和故事点很容易被游戏化,而且很少能带来质量。
AI 代码生成工具的另一个流行批评是,它们根据最有可能被接受的代码片段提出建议,而不是在整个代码库的可维护性背景下最有效的代码行。
到目前为止,GenAI 只是增加了编写的代码行数,而可能降低了代码的质量和安全性。这使得开发者印象不佳。
“当你把开发者放在你所做的一切的中心时,公司就会得到他们想要的东西。本质上,公司希望更快地获得更高质量的软件。开发者也想要同样的事情,但他们希望以一种愉快的方式做到这一点。因此,通过改善开发者体验和投资于正确的领域,每个人实际上都获得了他们想要的结果。”
— 安德鲁·博亚吉,Atlassian
更多代码行也很快转化为大多数开发者效率低下的原因:更多技术债务。
变更失败率和部署频率是 Google DORA 指标中最受欢迎的两项,另外还有交付周期和部署失败恢复时间。虽然 DORA 已成为行业基准,但它实际上并没有衡量开发者体验,而是衡量组织效率——然而,虽然它可以突出开发者所感受到的挫折,但你仍然需要询问他们。
调查中最令人震惊的结果可能是,38% 的组织正在将工作时间作为开发者生产力的替代指标,这与 69% 的开发者表示他们每天至少浪费五分之一的时间来应对效率低下形成对比。工作时间可能是开发者沮丧和倦怠的危险信号,但实际上可能是生产力不足的迹象。
工程师是创意工作者——这意味着,根据一些研究,他们只能每天大约工作四个小时才能发挥最佳水平。(在 12 月进行的 TNS VoxPop 调查中,近一半的参与者表示,他们每天最多能以最佳状态编写代码三到五个小时。)更多工作时间并不能转化为更高的生产力。
不出所料,使用错误的衡量指标会导致错误的假设。
Atlassian-DX 报告发现,领导者认为可以提高开发者生产力和满意度的首要因素是:
- 利用人工智能自动化流程和测试 37%
- 提供新的协作工具 37%
- 鼓励冒险和试验 36%
- 简化上游决策,这样问题才不会都变得紧急 35%
- 主办黑客马拉松来推动跨团队协作 34%
“工程师与其领导者之间的错位可能是开发者体验不佳的主要原因,因此导致生产力低下,”博亚吉说。“最好的解决方案是最简单的,那就是与开发者交谈,了解他们的挑战。”
倾听开发者并创造一个让每个人都感到安全的环境,以便他们可以畅所欲言,对于缩小开发者需求与管理者想法之间的差距至关重要。
Laura Tacho,DX 开发者洞察平台的首席技术官,本月在 LinkedIn 上发布了以下内容:“如果我明天开始担任新的首席技术官或副总裁职位,我会做的第一件事就是鼓励一些富有成效的抱怨。抱怨意味着他们关心,我不抱怨被视为一种迹象,表明人们认为分享他们的意见不值得或不安全。”
第一步是询问你的开发者需要改进什么。
Atlassian-DX 报告建议从关注三个领域开始:
- 开发者情绪: 通过开发者体验调查评估这一点。
- 工作流程和流程: 询问开发者哪些领域给他们带来了最大的摩擦,并开始跟踪和衡量这些领域。然后,实施和衡量影响他们的变化。
- 关键绩效指标: 这些指标可以是定性的,包括感知到的生产力和交付软件的难易程度,以及开发者满意度。
“了解挑战并投资于这些挑战之间存在相关性,然后我们看到满意度和生产力得到提高,”博亚吉说,这就是为什么 DX 开发者洞察测量平台被嵌入到Atlassian 的 DevEx 平台 Compass中的原因。
“当您将开发人员置于工作的中心时,公司就会得到他们想要的东西。从本质上讲,公司希望更快地获得更高质量的软件。开发人员也想要同样的事情,但他们希望以一种令人愉悦的方式做到这一点,”他继续说道。“因此,通过改善开发人员体验并在正确领域进行投资,每个人实际上都能获得他们想要的结果。”