您的浏览器禁用了JavaScript(一种计算机语言,用以实现您与网页的交互),请解除该禁用,或者联系我们。[Gitlab]:2021年全球开发、安全和运营专业人士报告(英) - 发现报告
当前位置:首页/行业研究/报告详情/

2021年全球开发、安全和运营专业人士报告(英)

房地产2021-12-13-Gitlab向***
2021年全球开发、安全和运营专业人士报告(英)

一个成熟的 DevSecOps 格局2021 年全球调查结果•4300 名受访者•发布/部署频率、自动化、安全性的巨大进步•开发人员、运营和安全专家用他们自己的话说 目录01介绍02概述起点当今的软件开发工具排名DevOps 平台的作用09 开发商Devs 和 DevOps 开发人员日常生活安全展望未来16 安全安全和 DevSecOps 角色正在发生变化 左移谁负责?关于bug 展望未来20 次操作操作还是那么多工具携手发展 展望未来24保持 DEVOPS 势头 介绍连续第四年,我们要求 DevOps 团队说出他们的实践和流程、他们的挑战和他们的职业生涯的真相。随着全球大流行的蔓延,去年 2 月有近 4,300 人花时间这样做,我们感到惊讶。我们对结果更加惊讶。今年,有史以来第一次,DevOps 变得严肃起来。很阴沉。它长大了。正在发生。我们没有问一个关于 Covid 的问题,但答案似乎是由那种挥之不去的经历塑造的。就好像在灾难面前,各地的团队都决定专注于最重要的事情,无论是自动化,还是测试,还是拥抱尖端技术。2021 年,团队准备走出 DevOps“文化”之战,进入技术实施的实际工作和(令人惊讶的)乐观结果。由于 DevOps,60% 的开发人员发布代码的速度比以前快 2 倍——比(大流行前)2021 年增加了 25%。72% 的安全专业人员将其组织的安全工作评为“良好”或“强大”——比 2021 年增加了 13%。56% 的运维团队成员表示他们“完全”或大部分是自动化的——比 2021 年增加了 10%。近 25% 的受访者声称拥有完全的测试自动化——比 2021 年增加了 13%。75% 的团队要么使用 AI/ML 或机器人进行测试/代码审查,要么他们计划——比 2021 年增加 41%。去年,dev、sec 和 ops 表示,他们需要更好的沟通和协作技能,以适应未来的职业生涯。今年,经过一段时间的强制软技能,他们的优先事项已显着转移到 AI/ML(开发)、主题专业知识(秒)和高级编程(操作)。有趣的是,我们听说了取得这些结果的辛勤工作:思维方式的转变、艰难的讨论和详细的分析。 DevOps 并不容易(即使对我们来说),但似乎使用真实数据关注结果可以帮助所有国家的各种规模的团队向前发展。与往常一样,我们会提醒您这是我们的调查,因此如果受访者提到我们或使用我们的产品(大约 50% 的调查对象是 GitLab 客户),请不要感到惊讶。此外,我们的调查对象中有 43% 的人已经“从事”DevOps 三年到五年或更长时间,因此他们是经验丰富的从业者,通常有抱负结果。您的结果可能会有所不同,这没关系。让我们开始吧。1 概述2021 年 DevSecOps 调查的主要发现DevOps = 更广泛的技术基础CI/CD 仍然很重要,但 DevOps 平台和 AI/ML 一样正在兴起。测试的麻烦受访者连续第三年指出测试是发布延迟的主要原因。想要更好的代码质量?然后就是 DevOps 了。其他好处包括缩短上市时间和更好的规划。认真起来去年,团队讨论了 Kubernetes 和微服务;今年,他们正在使用它们,或者计划很快使用它们。不仅仅是开发和运营DevOps 平台为每个人提供了一些东西——字面意思。整整 23% 的人表示他们公司的每个人都使用 DevOps 平台。2 3起点以下是在 2021 年 2 月至 3 月初期间完成调查的近 4300 (4294) 人的详细信息。角色41.67%软件开发人员/软件工程师8.59%开发运营工程师6.87%开发/工程领导7.88%软件架构师4.56%其他2.52%开发运营领导力2.81%技术执行官 - CIO / CTO / VP4.11%专案经理1.66%现场可靠性工程师2.57%系统管理员1.91%系统工程师/网络工程师2.23%产品经理1.56%质量保证性别14.95%女性81.86%男性0.93%非二元/第三性别0.51% 更喜欢自我描述1.75%宁愿不说行业40.04%计算机硬件/服务/软件/SaaS6.3%银行/金融服务4.78%其他18.05%教育5.29%商业服务/咨询3.4% 电信2.19%媒体与娱乐1.91%卫生保健2.24%政府1.14%运营领导力 4地区在职员工人数20.28%欧洲和俄罗斯25.37%1 - 10 人10.78%北美国21.34%11 - 100 人50%亚洲5.11%101 - 500 人2.28%南美国8.14%501 - 1,000 人0.77%澳大利亚和新新西兰12.31%1,001 - 10,000 人1.82%非洲11.08%10,000人0.98%中间东5.92%不知道 5今天的软件开发2021 年,大多数受访者 (35.9%) 告诉我们,他们的团队使用 DevOps 或 DevSecOps 开发软件,紧随其后的是敏捷/Scrum,占 31.78%。这是一年内“自我识别”DevOps 使用的巨大飞跃:2020 年,只有 27% 的团队将他们的流程描述为 DevOps 或 DevSecOps。略高于 10% 的团队表示他们的团队使用 Waterfall(从 2020 年的不到 8% 上升),并且与去年相同,5% 的团队具有“创造力”,并将他们的流程描述为 Water/Scrum/Fall。最常用的开发方法:35.9%DevOps/DevSecOps31.78%敏捷/Scrum13.02%看板10.02%瀑布5.01%水/Scrum/秋季4.20%倾斜略高于 30% 的受访者表示,他们的 DevOps 实践已有一到三年的历史。近 27% 的公司已经实施 DevOps 一年或更短时间,而近 23% 的公司已经实施了五年或更长时间。大约 20% 的人处于 DevOps 的“甜蜜点”三到五年之间,这意味着他们已经知道成功并且对流程和例程感到满意。今天的 DevOps 实现是什么样的? CI/CD 最有可能成为该流程的一部分,其次是 DevSecOps、测试自动化和 DevOps 平台。 2020 年,只有 4% 的受访者在 DevOps 中使用了 AI/ML;今年,有 11.5% 的人报告他们这样做了。提到的其他技术包括:基础设施即代码 (IaC) GitOpsKubernetesNetDevOps(大规模网络)使用 CI/CD 的平台“引导” 广泛使用 SREUnix连续第二年,受访者表示开发人员最有可能从 DevOps 实践中受益 (36%),其次是运维 (22%)、安全 (16%),QA 和业务方面排名第 13 %。选择 DevOps 的三大理由?代码质量、更快的上市时间和安全性。 DevOps 实践的其他明显好处:改进的沟通/协作和更快乐的开发人员,这两者在 2021 年的评分都远高于 2020 年。近 59% 的调查受访者表示,他们的团队每天部署多次、一天一次或每隔几天部署一次,这一百分比与去年几乎相同,并且可能与超过 61% 的在以下公司工作的受访者保持一致500 名员工或更少。总而言之,28% 的人持续部署(一天多次),而 15% 的人每周部署一次,10% 的人每月一次,不到 7% 的人每几个月一次。 6“测试会延迟一切。”“许多人发现审查代码是件苦差事。”“由于匆忙或忽视计划而导致的运营失败。”毫不奇怪,绝大多数受访者都参与了开源项目——今年超过 69%,高于去年的 63%。超过 29% 的人表示他们为 Gitlab 做出了贡献,14% 的人参与了 Kubernetes,13% 的人参与了 VS Code。不过,近 19% 的人表示他们参与了“其他”项目,其中许多项目规模较小且鲜为人知(我们去年也看到了这一趋势)。测试依然艰难连续第三年,大多数调查参与者明确指出测试是最有可能导致延误的领域。其他瓶颈包括规划、代码开发和代码审查,再次反映了我们在 2019 年和 2020 年的调查中看到的情况。有趣的是,我们的受访者对这些领域有很多话要说:“Covid**(多次提及)。” “测试在编写和运行时都可能很慢。”“业务和开发之间的沟通很难。” “安全性根本没有集成到开发过程中:(。”“我们有严格的代码审查流程,审查者通常需要几天时间才能回复审查请求。”“找人进行代码审查可能很难(平均 1 天)。之后,业务测试需要时间才能完成(平均 2-4 天)。”“部署周期中的测试尚未完全自动化;希望通过我们从 BitBucket Jenkins/drone 迁移到 GitLab 来改善这一点。”“我们的大部分延误是由多个团队参与造成的,在不同的管理保护伞下,顶层没有一个有凝聚力的愿景。”“我们目前使用的技术堆栈与五年前选择的技术堆栈相同,因此还没有跟上现代实践,例如 TDD、版本控制和六边形架构。”“开发人员有时不知道他们必须进行代码审查。他们不确定如何执行它们以及它们是否有效。有时它们会被跳过,以便流程可以通过。” 7穿过测试针是一个挑战,但有一些小的迹象表明前进的势头。近 25% 的团队报告完全自动化测试(是去年报告的两倍多),28% 的受访者表示他们至少实现了一半。大约 34% 的受访者表示,开发人员会测试他们自己的一些代码(高于去年的 31%),32% 的人表示在编写代码时进行自动化测试,与 2020 年的 25% 相比有了很大的提升。但是 25% 的团队要么没有测试自动化,要么刚刚开始考虑它,9% 的团队承认他们的团队还没有将测试转移到足够远的地方。不出所料,对缺乏自动化测试的失望是显而易见的:“由于时间限制,自动化测试被忽略了。” “测试?这是一个有趣的想法。”“我们打算做 TDD,但它通常在事后结束。”“我尝试在可能的情况下使用 TDD 编写代码;在编写 React 组件时,或者在更改一个没有经过许多副作用和许多输入测试的函数时,技术负责人(我)现在禁止(我)重构它是很复杂的 ='(。”测试隧道尽头的最强光可以在人工智能/机器学习的使用中找到。 2020 年,只有 16% 的调查受访者表示他们有“机器人”测试他们的代码或 AI/ML 工具进行测试;今年,这一比例刚刚超过 41%。总而言之,25% 的受访者使用机器人来测试他们的代码,16% 的受访者使用 AI/ML 在人类看到代码之前对其进行审查,34% 的受访者正在探索 AI/ML 的想法,但尚未采取任何行动。确切地四分之一的受访者未在测试中使用 AI/ML。工具排名近 85% 的受访者使用 Git 进行源代码控制(低于去年的 92%),而近 4% 的人使用 Team Foundation Server,2% 的人使用 CVS。只有 5% 的受访者表示他们不使用任何源代码控制。GitLab 是 CI/builds (34%) 的首选工具,其次是 Jenkins (21%)、GitHub Actions (14%) 和 BitBucket (8%)。略高于 37% 的受访者表示他们“部分”使用微服务,而 34% 的人完全使用它们(去年为 26%),28% 的人根本不使用它们。一些受访者表示他们正计划或正在调查微服务,而有人说,“我们计划在未来一两年内转向它们。”但谈到 Kubernetes,这绝对是一种“一年有什么不同”的情况:众所周知,2020 年,只有 38% 的受访者使用了 K8s。今年,46% 的人使用 Kubernetes,而 37% 的人不使用(低于去年的 50%)。与去年相比,今年尚未加入的 DevOps 团队更接近于实际实施 Kubernetes:“还没有,但对于我们想要的方法来说,这是非常在计划中的。” “计划在 2021 年。”“是的,但并非适用于所有工作负载。还使用了 ECS、无服务器。”“我们已经尝试过,但现在小型生产环境不需要它。”“我们今年将转向 K8s。呜呜。” 8今年也更加重视低代码/无代码开发工具。去年,75% 的受访者告诉我们他们不使用它们;今年,41% 使用低代码/无工具,而 59% 不使用。您的组织是否采用了微服务?37%部分28%不DevO