编程语言到底选择哪种要好_选择一种编程语言:招聘

编程语言到底选择哪种要好

您如何选择适合您下一个项目的语言? 使用正确的工具进行工作? 当然可以,但这是什么意思呢? 我怎么知道正确的工具是什么? 如何获得足够的新语言经验,以了解它是否是适合该工作的工具?

您选择的语言将对您的项目产生一些影响:

  • 寻找并雇用新的开发人员加入您的团队
  • 是否有繁荣的社区:提供问答支持以及库和框架的成熟度,以帮助您完成更多工作
  • 培训您现有的团队; 发现和学习新工具; 以及可能的

    使用新技术的动机影响
  • 最后,您选择“合适的工具来完成工作”,无论是短期维护还是长期维护,都将使开发工作变得容易或困难。

这是有关选择正确语言的系列文章中的第一篇-我们将首先解决招聘问题。

招募

对于许多团队来说,招聘新员工是他们面临的最困难的问题。 虽然编程语言的选择对开发过程有许多明显的技术影响,但对您的招聘工作也有巨大的影响。 如果您选择的语言能够使最棘手的问题变得容易,那么就必须考虑它。

筛选

事实是,大多数开发人员自然会首先通过语言过滤自己。 大多数Java开发人员在寻找工作时,可能会先询问他们的Java开发人员朋友,并在工作站点中搜索Java开发人员工作。 招聘人员自然会进一步做到这一点–他们需要一种简单,关键字友好的方法来尝试将候选人与工作匹配,并且按语言进行过滤是一种简单的开始方法。

当然,这完全没有必要-大多数开发人员,如果出现了正确的机会,会很乐意切换语言。 大多数公司,只要有合适的候选人,都会很乐意雇用没有必要语言背景的人。

但是,几乎每次我参与招聘时,我们总是会按语言过滤候选人。 不管我们说“我们只想要最好的候选人”是多少,我们都不想冒招来需要几个月时间来适应我们的语言的人的风险。

我上一次换工作涉及语言更改,这是我十年来第一次更改语言。 当然,我花了一个月才能胜任C#。 可以说是三四个月才能变得富有成效。 但是当然有可能,但是似乎并不常见。

这纯粹是轶事:我很想找到一种方法来衡量开发人员切换语言的频率–对于公司来说,以其主要语言拥有零商业经验的公司接管开发人员有多普遍? 我们如何衡量呢? 我们能否从许多公司的招聘过程中收集统计数据? 给我发电子邮件或在下面发表您的想法发表评论。

人才库规模

最终,您选择的语言对招聘产生了主要影响:哪种语言最容易找到优秀的开发人员? 我认为我们可以将其分解为三个因素:

  1. 使用该语言的开发人员总数
  2. 这些来自其他公司的开发商的竞争
  3. 该池中“优秀”开发人员的密度
开发人员总数

有些语言使用的语言比其他语言更多。 例如,Java开发人员比Smalltalk开发人员多很多倍。 在一个简单的层次上,通过寻找Java开发人员,我将从比寻找Smalltalk开发人员更大的范围内寻找开发人员。 但是我们如何量化呢?

我们可以通过估算围绕特定语言的社区规模来估计熟练或积极使用特定语言的开发人员数量。 具有大型社区的语言表示更多的开发人员正在使用和讨论它们。 但是,我们如何衡量社区的规模?

GitHub和StackOverflow是两个大型社区站点–代表社区创建的开源代码和社区提出的问题。 有趣的是,它们似乎有很强的相关性-在StackOverflow上提出很多问题的语言在GitHub上发布了很多代码。 我当然不是第一个发现此问题的人,几年前我在Drew&John的一篇不错的帖子中查看了相关性: http : //www.dataists.com/2010/12/ranking-the-popularity编程语言/

GitHub和StackOverflow可能很好地表明了每种语言的社区规模。 这意味着如果我们寻找C#开发人员,那么选择的开发人员比选择Ada的要多得多。 但是,纯粹的数字并不是全部。

开发商竞赛

我们并不是在真空招聘–在我们地区招聘的所有其他公司(以及那些不认为地理位置会成为障碍的偏远公司)的开发人员之间存在竞争。 这场竞争将产生两个影响:首先,如果使用某种语言的开发人员面临更多竞争,这将使他们更难以吸引到我们公司。 假设市场力量发挥作用,那么这也表明,具有按需使用语言经验的开发人员的平均薪水自然会更高–因为公司使用薪水来使自己与竞争对手区分开来。 仅仅因为C#开发人员多于Ada开发人员,您从这两个组中雇用开发人员的难易程度在一定程度上取决于竞争的程度。

我查看了在StackOverflow.com上标记的问题总数,以及在JobServe.com上需要该语言的英国招聘广告的数量。 有趣的是,它们之间有很强的相关性(0.9)–这可能并不奇怪,这表明大多数开发人员主要使用他们在日常工作中使用的语言:很多公司都聘用了许多语言围绕的社区; 并且只有少数公司雇用的围绕语言的小型社区。 当然–不清楚先出现的是哪种,公司是采用一种语言是因为它拥有一个庞大的社区,还是因为很多开发人员在工作中使用它而出现了大型社区?

有一些有趣的异常现象:工作需求似乎比开发人员对某些语言(如Perl和VisualBasic)的需求更大。 这是否表明这些语言已不受欢迎,公司仍在投资,现在很难招募呢? 同样,Scala和Node.js的需求似乎超出了开发人员所能提供的。 另一方面,PHP和Ruby之类的语言比工作需求更活跃,这表明它们是业余爱好者,业余爱好者和专业人士在业余时间都喜欢使用的语言。 然后是Haskell,这是另一种语言,存在很多问题,却没有很多工作-这可能纯粹是它在学术界的盛行还没有转化成商业上的成功?

通常,较流行的语言对开发人员有更多的竞争。 Perl&VisualBasic将很难找到熟练的开发人员。 而PHP,Ruby和Haskell应该更容易找到开发人员。 除了这些离群值之外,决定开发人员池总体规模的雇佣语言(即通勤距离内或愿意搬迁的语言)是唯一的决定因素。 有多少公司因为“更容易”雇用开发人员而继续使用主流语言(Java和C#)? 基于这些证据,我认为这是不正确的。 实际上,情况恰恰相反:要使开发人员的竞争最少(薪水更低,面试时间更少),您应该雇用具有Ruby或Haskell经验的开发人员。

优秀开发者的密度

更具争议的想法之一是,按语言筛选开发人员可以使您快速筛选出能力较弱的开发人员。 例如,仅查看Python开发人员,也许他们平均比C#开发人员“更好”。 我对此的怀疑是,如果发现它是真的,开发人员会Swift学习该语言,从而增加获得工作的机会:Swift消除使用语言作为过滤器的任何好处。 它也开始听起来有点“我的语言比您的语言还好”。

但是如果这是真的,如果我们可以使用语言作为快速筛选器来获得更高质量的候选者的话,那将很有趣。 很有可能在此上收集数据。 例如,我使用一个在线采访 ,可以很容易地用来为开发人员基于语言的自我选择提供A / B测试。 在相同的标准化招聘测试下-使用语言A的开发人员比使用语言B的开发人员做得更好还是更差? 当然,招聘考试与工作绩效之间的相关性值得商–,但它可以为我们很好地表明语言和(某种程度上)技术能力之间是否存在相关性。 这项工作会更好吗? 给我发电子邮件或在下面发表评论。

结论

流行语言吸引了更多开发人员,但更多公司试图雇用他们。 这两个因素似乎相互抵消了-开发人员与工作人员的比例几乎是恒定的。 那么就招聘而言,也许对于您的下一个项目脱离常规并使用非主流语言? 现在该雇用您一些Haskell了吗?

参考: 选择一种编程语言: Actively Lazy博客上我们JCG合作伙伴 David Green的招聘

翻译自: https://www.javacodegeeks.com/2013/05/choosing-a-programming-language-recruitment.html

编程语言到底选择哪种要好

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值