2022 软件开发者“时间管理”调查报告:近 90% 的人认为开源代码必不可少|68% 的人发现在办公室工作效率更高

简介: 2022 软件开发者“时间管理”调查报告:近 90% 的人认为开源代码必不可少|68% 的人发现在办公室工作效率更高

“程序员、开发者、软件工程师们他们每天到底在干什么?到底花多少时间写代码?”这个问题你是不是也有点好奇呢?近日,Retool 就对 600 名软件工程师(包括 ICs 和管理人员)做了个调查,报告结果令人吃惊。

image.png

运行别人的代码

据参与此项调查报告的工程师们表示,“多半时间我们都在运行别人的代码”。

他们表示,自己所能想像到的软件工程师生命中的某一天,通常会想到在文本编辑器中编写全新的代码、构建新功能、修复 Bug 等。但在 2022 年,绝大多数软件工程师都在运行其他人的代码 —— 建立在开源库之上,或重用公司代码库其他部分或在线教程中的代码。

近 90% 的人认为开源代码必不可少

image.png

众所周知,近年来开源不断受到追捧,热度一直很高,但开源代码对现代代码库至关重要的程度却令人惊讶。在此次调查的工程师中,近 90% 的人(29% 的人表示非常重要,54% 的人表示比较重要)认为开源代码对他们的日常工作来说至少是必不可少的。此外,仅不到 1% 的人自信地表示这不是必要的。

超 80% 的开发者每月至少 1 次将开放源代码引入代码库

Frequency with which engineers pull open-source code into codebase

image.png

image.png

如果在 Node 上构建应用程序,从技术上讲,这就其实就是一直在使用开源代码,但依赖性比这更深。该调查数据显示,超过 80% 的开发人员每月至少一次(通过 StackOverflow 或其他方式)积极地将开放源代码引入他们的工作,近 50% 的开发人员每周至少一次,初级工程师的比例略高于高级工程师。

初级开发者比高级开发者复制更多的代码

image.png

此前,就有StackOverflow 模因数据显示,开发人员正在复制大量代码,不仅来自互联网,还包括复制内部代码片段及重用自己编写的代码。而此次调查报告的数据也恰恰应证了以上结论。值得关注的是,初级开发人员比高级开发人员复制更多的代码,这与使用开放源代码的形态是一致的。

开发者更希望少花时间做测试更改


image.png

如今,随着 Vercel、Netlify 等工具大量涌现,部署应用程序却反而变得越来越复杂。与过去相比,软件在世界上所占的比例要大得多,这带来了对正常运行时间和可靠性的期望,而这在过去可能并不存在。

通过对软件进行更多的测试,发现集成测试需要几个小时才能运行,且很难构建,需要假数据、模拟和存根。你不得不在不同的操作系统、黑暗和光明模式、浏览器,甚至不同种类的 Mac 芯片中来回切换去探索。

随着这些构建过程变得更加复杂,尤其是有更多的测试,软件工程师将不得不把更多的时间花在等待机器运行上。比如,SQL 查询在大型表上运行需要很长时间,数据库同步很慢,构建一个完整的 repo 可能需要 20 分钟:所有这些都会占用宝贵的时间。

此次调查数据就显示,软件工程师真的更愿意花更少的时间来测试更改,希望能花时间做的最重要的事情,这对个人贡献者和管理者都适用。

日常面临的最大挑战:人为障碍

image.png

image.png

如果生活只是编写代码,事情就会简单一些。但在该调查中,软件工程师们表示,人为的障碍,如项目方向的颠覆性转变、代码审查延迟,或试图找出谁拥有哪段代码,是他们每天面临的最大挫折。

数据显示,38% 的工程师表示,等待人员(例如等待代码审查、需求)是日常工作中的一个重要问题。特别是,代码从软件工程师的大脑进入生产需要花费将近一整周的时间,这一数据可能与你的公司做得如何有关。

image.png

image.png

在“ICs 获得单个 pull 请求代码审查的时间量”这一数据中,57% 的开发人员表示,通过代码审查获得 pull 请求需要 4 个小时以上,26% 的开发人员表示需要一天以上的时间。

此外,有超过 30% 的开发人员表示,弄清楚谁确切拥有一段代码以及获取上下文的相关需求可能需要半天以上的时间。可以预见,在大型公司中,延迟确定代码所有权的情况更为常见:员工人数超过 1K 的公司中,21% 的开发人员表示,确定谁拥有一段代码通常需要超过一个工作日的时间,相比之下,员工人数较少的公司,延迟确定代码所有权的情况不到 10%。

超 30% 的开发者希望花更少的时间招聘/面试

随着软件工程师人才的紧缺,很多公司都在积极吸引各类人才,但这项招聘负担却都落在了目前在职的工程师身上:面试、人际关系网或其他方面。

该调查数据显示,超 30% 的开发者表示他们更愿意花更少的时间招聘和面试。

image.png

在大公司看到的同样模式在这里也适用:在员工超过 1K 的公司,几乎一半(45%)的开发人员希望在招聘上花费更少的时间,这比员工少于 250 人的公司的开发人员高出 50%。

这种差异可能纯粹是因为公司规模较大的组织可能会有更长、更艰巨的面试过程,但在绝对规模之外,增长率可能会在这方面发挥重要作用。快速发展的公司需要快速雇佣工程师,而且没有那么多的员工来承担日益增加的面试和招聘负担。

68% 的人发现在办公室工作效率更高

受到疫情的影响,全球企业都在调整办公节奏。此次调查数据也显示,许多开发人员发现自己在办公室工作效率更高,至少在一定程度上是这样。

image.png

在有全面办公室政策(即不允许远程)的公司工作的软件工程师说,他们觉得亲自工作效率更高(68%)的可能性是在没有全面办公室政策的公司工作的软件工程师(34%)的两倍。

此外,调查还发现,工程师平均每周只有大约 10 小时的“深度工作”时间。这个结果也是由于上面提到的干扰项:面试、等待代码审查、测试和构建,甚至弄清楚谁拥有什么代码。事实上,初级工程师的平均时间要多得多,可能比高级工程师多 20%,因为他们需要处理的管理内容更少。

综述

随着企业对开源软件的日益依赖,在促进软件技术开发的同时,也会出现不少缺点和担忧。特别是在开源规范尚未完全跟上当今软件生态发展节奏的前提下,来讨论开发者们所面临的问题是更具重要意义的。

所以,以上调查报告,可以很好的让我们了解到软件工程师们、开发者们在日常时间管理方面,日常所面临的一些问题,这对构建整个开源生态健康发展也有很好的考察意义。也欢迎广大开发者对该调查结果发出自己的观点,在留言区评论互动。

点击查看完整报告:https://retool.com/reports/st...

相关文章
|
存储 网络协议 编译器
探索C++14新特性:更强大、更高效的编程
探索C++14新特性:更强大、更高效的编程
探索C++14新特性:更强大、更高效的编程
支付宝境外(海外)问题方案集锦
说明:   境外和境内接口不同签约等不同,如果要接入境外请按照境外方式接入 。   境外接口官网:[url]https://global.alipay.com[/url] 声明:  业务和技术方案可能会有变动最终以境外业务和技术支持回复为准,下面问题仅供参考。
6990 12
|
算法 搜索推荐 计算机视觉
图片相似度计算及检索调研
图片相似度计算和相似图片搜索,是图片识别领域两个常见的应用场景。例如搜索相似商品,和相似的图片,在百度、淘宝中都有应用。在某些业务中,也存在对图片相似度的计算和判断。因此,在这里简单介绍一下相关算法。
3075 0
|
人工智能 运维 监控
让天下没有难查的故障:2025 阿里云 AI 原生编程挑战赛正式启动
本次大赛由阿里云主办,云原生应用平台承办,聚焦 Operation Intelligence 的智能运维(AIOps)赛道,为热爱 AI 技术的开发者提供发挥创意和想象力的舞台,借助 LLM 强大的推理能力与标准化整合的多源可观测数据,找到 AI 应用在智能运维(AIOps)场景上的新方式。
1063 31
|
监控 Kubernetes Go
日志采集效能跃迁:iLogtail 到 LoongCollector 的全面升级
LoongCollector 在日志场景中实现了全面的重磅升级,从功能、性能、稳定性等各个方面均进行了深度优化和提升,本文我们将对 LoongCollector 的升级进行详细介绍。
950 87
|
5月前
|
人工智能 移动开发 安全
无需代码 OpenClaw 本地 AI 制作企业官网步骤详解(包含最新版安装包)
2026新版OpenClaw(小龙虾)是本地离线AI建站工具,无需代码,通过文字描述行业、风格与模块,30分钟内一键生成完整HTML5企业静态网站源码,支持本地调试与自由部署,安全可控、高度定制。
|
存储 运维 开发工具
警惕日志采集失败的 6 大经典雷区:从本地管理反模式到 LoongCollector 标准实践
本文总结了日志管理中的六大反模式及优化建议,涵盖日志轮转、存储选择、并发写入等常见问题,帮助提升日志采集的完整性与系统可观测性,适用于运维及开发人员优化日志管理策略。
493 5
|
机器学习/深度学习 存储 设计模式
特征时序化建模:基于特征缓慢变化维度历史追踪的机器学习模型性能优化方法
本文探讨了数据基础设施设计中常见的一个问题:数据仓库或数据湖仓中的表格缺乏构建高性能机器学习模型所需的历史记录,导致模型性能受限。为解决这一问题,文章介绍了缓慢变化维度(SCD)技术,特别是Type II类型的应用。通过SCD,可以有效追踪维度表的历史变更,确保模型训练数据包含完整的时序信息,从而提升预测准确性。文章还从数据工程师、数据科学家和产品经理的不同视角提供了实施建议,强调历史数据追踪对提升模型性能和业务洞察的重要性,并建议采用渐进式策略逐步引入SCD设计模式。
680 8
特征时序化建模:基于特征缓慢变化维度历史追踪的机器学习模型性能优化方法
|
前端开发 JavaScript 索引
前端性能优化:虚拟滚动技术原理与实战
前端性能优化:虚拟滚动技术原理与实战
1716 80
|
SQL 人工智能 数据挖掘
阿里云可观测 2025 年 6 月产品动态
阿里云可观测 2025 年 6 月产品动态