「译」软件开发趋势 2019 调查报告

1,396 阅读10分钟

原文地址:软件开发趋势 2019 调查报告(英文)

本文速读

  1. 在2018年,使用最广泛的编程语言是JavaScriptJavaPython,其中30.03%和25.41%的受访者使用它们。
  2. 在2019年,JavaScript仍然是领先的编程语言,54.24%的参与者使用它。 自2018年以来,数据没有变化:Java(34.96%)排名第二,Python(24.46%)排名第三。
  3. 外包软件开发仍占比软件开发中的33.44%,其中大多数(57.3%)与软件开发公司合作,21.1%与自由职业者合作,21.6%与过去12个月一样。
  4. 最受欢迎的项目管理软件是 Jira,其次是GitHub。
  5. 最受欢迎的通讯工具是 Slack,其次是Email。
  6. 员工推荐和内部招聘人员是招聘人才的最佳方式。

以上结论均来自于本份报告,数据来源为国外机构统计,国内开发者仅供参考。

前言

本文更新于2019年! 请参阅此处存档的2018年版
软件开发发展得非常快。
今天使用的工具或框架明天可能已经过时了。 我们的目的是记录行业的动态,跟踪它过去的演变情况,并对其前进方向做出有根据的猜测。
为了更好地理解这些变化并揭示最大的挑战和最佳实践,我们在3年前开始发布“软件开发状态报告”。
今年的报告不仅会为您提供所需的数据,以便将您的活动与其他调查参与者进行基准比较,获得一些见解,以进一步改善您的开发团队并跟上快速变化的行业,但它也会将这些变化与去年的数据进行比较。
这篇文章重点介绍了该报告中10多个有趣的统计数据。 完整的软件开发状态2018和2019报告包含有关软件开发前景的更多有趣见解。

您可以在此免费下载完整报告:

这篇文章中有什么?

  • 科技公司在2018年与2019年面临的最大挑战
  • 您公司的主要编程语言是什么(2018年与2019年)?
  • 您打算在未来12个月(2018年与2019年)中使用哪些新的编程语言?
  • 您使用什么工具进行项目管理(2019)?
  • 您在项目期间使用哪些工具进行沟通(2019年)?
  • 您最重要的招聘标准是什么(2018年对2019年)?
  • 您如何保持软件开发人员的积极性(2018年与2019年)?
  • 您是否在过去12个月(2019年)全部或部分外包软件开发?
  • 您使用什么指标来衡量开发人员的绩效(2019年)?
  • 经理与开发人员 - 团队交付问题的首要原因是什么?(2019)

注意:如果您发现难以阅读图表,请随时在此处下载

软件开发的管理

在2019年,科技公司面临的最大挑战与规模有关:提供工作软件,而积压工作量充足且规模有限。 紧接着是分享知识。


我们很好奇他们曾经试图克服这些挑战。 这是他们所说的。

规模

受访者试图克服这一点有几种方式。 最受欢迎的是雇用更多人,这样更多的开发人员可以完成更多的事情。 受访者表示另一个重要部分是实施敏捷方法; 优先发展和提高生产力是他们应对这一挑战的方式。

知识分享

在开发团队中分享知识的最流行的方法之一是举行专门的知识共享会议,如棕色包午餐,会议和
技术会谈。 另一种分享知识的流行方式是通过代码审查以及可以在任何团队协作工具上托管的团队内部wiki /文档。
 
在2018年,我们将这些数据分成两组:开发人员和管理人员
两个工作类别的性质不同,使他们的挑战也不同。
结果? 亲自看看吧。

开发人员面临的最大挑战是分享知识,然后处理规模问题。
与去年相比,情况发生了一些变化。
2018年,开发者受访者表示他们面临的最大挑战是处理规模问题,他们提到时间管理是他们面临的第二大挑战。
根据2019年的数据,管理者的最大挑战也与规模(24.32%)有关,但他们提到招聘(20.67%)是他们的第二大挑战。 毫不奇怪,招聘是第二大招聘,因为它是管理者需要处理的事情。
相比之下,2018年,管理人员发现很难聘用人才(33.55%表示这是他们面临的最大挑战),也是处理能力不足的问题(28.29%)。

外包软件开发

当公司缺乏人才时,克服这一挑战的实际操作方法可能是软件开发外包。
我们的问题是:您是否在过去12个月内全部或部分外包了软件开发? 33.44%的参与者回答是。

从那些说是的,大多数(57.3%)与软件开发公司合作,21.1%与自由职业者合作,21.6%与过去12个月一样。

工具和技术趋势

编程语言

令人兴奋的是,看到新的编程语言如何获得动力,并逐渐爬上人气阶梯。 我们比较了2019年到2018年的数据,看看情况如何变化。
在2018年,使用最广泛的编程语言是JavaScript,60.73%的受访者使用它。 第二个最受欢迎的是JavaPython,其中30.03%和25.41%的受访者使用它们。
在2019年,JavaScript仍然是领先的编程语言,54.24%的参与者使用它。 自2018年以来,数据没有变化:Java(34.96%)排名第二,Python(24.46%)排名第三。

这是目前的状态,但我们要去哪里? 我们想要了解他们打算在未来12个月内使用的编程语言。


根据2019年的数据,28.92%的受访者表示他们不打算在未来12个月内使用任何新的编程语言。
但是,21.73%的人表示他们计划使用Python,而16.83%的人表示他们计划使用TypeScript,其次是Go,占17.41%。

工具

开发人员团队使用各种工具(尤其是测试和项目管理),这使得在图表上显示工具变得尤为困难。 该图表显示了一些行业领先的工具,在图表右端形成一条长尾的大量工具之后。
如果查看图表,您会看到“其他”类别比其他任何类别更高。 这是一个合并类别,收集了受访者几次提到的所有长尾工具。
以下是最受欢迎的项目管理,通信和SCM(即软件配置管理)工具。

报告中提供了更多图表; click here to download.

招聘和留住人才

招聘和留住开发人员是管理开发团队的关键部分。 由于报告的目的是为技术领导者发现新信息,因此这是报告的重要部分。
本章阐述了科技公司的招聘实践,包括招聘标准,以及吸引和激励人才的最流行的方法。
自2018年以来,最有效的招聘方式没有改变。 员工推荐和内部招聘人员是招聘人才的最佳方式。

候选人必须满足哪些最重要的要求?

科技公司在招聘人才时会关注4个重要领域。这些自2018年以来没有变化。
学习意愿是最重要的因素,其次是工作经验,某种技术技能评估测试和文化契合。
看来测试项目,副项目和软技能都不是很重要的因素。有趣的是,大学学位和认证对于科技公司来说不是那么重要的因素。
试想一下,由于软件开发正在快速变化,因此聘请愿意学习新技术的人是必须的。
没有学位?你还是安全的。
在招聘软件开发人员方面,学习意愿比获得学位要重11.4倍。自2018年以来,这一差距刚刚扩大,2019年的价值低于2018年。
招聘是最难的部分。让开发人员保持积极性并在公司中保留更长时间仍然更容易。
科技公司使用哪些方法来保持软件开发人员的积极性?

事实证明,具有挑战性的工作和出色的团队文化是保持开发人员积极性的最流行方式。 自2018年以来没有变化。
有趣的是,提供股票期权,明确的职业道路和培训是激励开发人员的不太流行的方法。

绩效管理

这是一个令人兴奋的问题:顶级和平均表现团队之间有什么区别?
在本报告的这一部分中,我们将深入探讨软件团队如何衡量绩效,软件开发经理的成功以及导致交付问题的原因。
软件团队如何衡量绩效?
在一个指标中表达开发人员的表现真的很难,并且有许多不同的方法来衡量绩效。 我们想知道最受欢迎的。
我们还对数据进行了分割,将高绩效团队与平均绩效团队分开,看看我们是否能够发现两组之间存在任何差异。

完成任务是衡量绩效最佳团队绩效的最常用方法,而工作软件则是针对普通绩效团队。 两组之间没有太大差异。 有趣的是,表现平均的团队不太可能使用任何类型的指标来衡量绩效。 我们学到的主要内容是组建与我们试图完成的工作相一致的团队,而不是模仿组织结构。 通过这样做,我们能够灵活地改革团队并专注于执行手头的任务。  -Miovision的Adrian Chung

交付原因问题

除了了解顶级和平均表现团队之外,我们还想了解开发人员和管理人员对交付问题原因的看法。
我们的假设是,由于工作的重点和性质,他们的思维方式不同。
结果如下。

对于管理者而言,首要原因是不切实际的期望,其次是错误的估计和不断变化的环境。
对于开发人员来说,情况有点不同。 他们还强调了不切实际的期望作为头号原因,紧接着是缺乏明确定义的可交付成果以及糟糕的估计。
超过40页的新数据等着你! 在此处下载完整报告

我们的合作伙伴&结论

结论

这篇博文仅列出了我们从调查中收集的所有数据中的一小部分。
今年是我们开始将新数据与前一数据进行比较的第一年。 我们很高兴继续发布这份报告,并在几年后看到该行业随着新趋势的形成而发展。
如果您想查看完整报告,只需点击此链接并下载即可。 随意与您认为可能感兴趣的任何人分享此帖子或报告。

我们的合作伙伴

完整报告点击此处下载。