Linux基金会企业开源指南系列之七 ———— 如何正确的招聘开源人才

就笔者亲身的职业经历而言,一家没有开源基因的公司,即使招到了开源社区的人,也会导致双方异常的痛苦,仅仅一方的改变是徒劳的,作为公司必须做出改变,那么除了技术开发部之外,最为重要的莫过于人事部门了,如果人事部门不懂开源人才,那么可以基本盖棺论定,这家公司还没有准备好拥抱开源!在往死胡同里逼自己。

特别声明

本文拥有创作共用授权之相同方式共享授权4.0版国际许可协议(Creative Commons Attribution ShareAlike 4.0 International License)授权许可。 开源之道独立精心翻译分享,欢迎同道中人商讨。

招募开源开发者

拥有丰富经验的开源开发者是稀有人才。要吸引顶级的人才,作为公司需要花些心思和技巧的,而不是常见的在流行的人力网站上或者普通的招聘就草草了事的,因为你那样做可能找不到。

贵司的开源项目可以成为最有效的招聘利器!

本指南涵盖了作为一家公司该如何通过创建开源文化、为开源做贡献、以及创建开源项目来招募开发者,以及内部培养。

为什么需要招募策略

关于开发者短缺的情形日益严峻,并非空穴来风。据著名开源基金会 Cloud Foundry 最近所做的调查,仅美国就有25万个软件开发人员的职位空缺,此外还有50万个要求科技含量较高技能的职位空缺。同时预计未来十年内开发人员职位空缺数量将达到100万。

熟练的开发人员并不短缺,可以满足全球需求: 非常同意 18% 有点同意 18%

熟练的开发人员已经或即将出现短缺: 非常同意 34% 有点同意 30%

我的公司在聘请我们所需的熟练开发人员方面没有困难: 非常同意 20% 有点同意 23%

我的公司很难聘请具备所需技能的开发人员: 非常同意 27% 有点同意 30%

所谓的开源开发者,其实也就是在开源的经验方面颇丰,但是他们仍然是属于这个大的群体 —— 软件开发者。他们之所以非常的抢手,因为他们往往是分布在全球各地远程工作,这属于开源社区的本质特性之一,而这也就意味着贵司正在与全球各地的公司竞争同一批人才。

果不其然,结果就是开源开发人员的薪酬稳步攀升,因为公司间为吸引并留住人才而激烈地竞争。根据最近的一份报告显示,目前开发人员的平均薪酬为104,425美元。这份报告还指出,考虑到美国仅有八分之一的高中(13.2%)开设AP计算机科学课程,因此开发人员短缺状况在短期内不太可能得到缓解。

熟练的开源开发人员可以要求薪酬溢价。2017年度开源职业报告的调查显示,89%的招聘经理表示很难找到具备良好的开源技能与专业知识的人才。该报告还发现,60%的招聘经理在寻求聘用开源人才,同时还有一半的招聘经理在寻找拥有资格证书的候选人。

这意味着在可预见的未来,开源开发人员的薪酬可能会继续因竞争需求的驱动而不断攀升。

“对于工程师有一个常见的误区就是以为他们是不食人间烟火的,他们只关心最新最酷的技术,注重自身学习和成长。好吧,其实这都被他们混乱不堪的外表所蒙骗了,至少金钱激励来说和上述这些是同等重要位置的。 那么我告诉你的就是:如果您想吸纳人才,您还是需要建立不次于其它公司的经济待遇。如果你给不了人们丰厚的薪酬, 他们将不会想要去贵司上班的。” – Camille Fournier,Two Sigma常务董事兼平台工程负责人, 《The Manager’s Path: A Guide for Tech Leaders Navigating Growth and Change》一书作者, 开源领导者峰会倡导者

所以,招募开发者策略的第一步是将金钱激励考虑妥当了,因为只有搞定了它才能接着往下走。这是贵司开源项目的敲门砖。其可以帮助贵司招募到各种技能层次水平的开源开发人员。

足够的人才储备对于满足贵司的开源目标是相当的重要一环,其中包括是否有足够的能力为贵司所依赖的开源项目上游做贡献、以及贵司自己开源的技术和社区的增长。这就是需要一个战略、一整套的流程,以及可实现的目标。

开源作为招募工具

在我们深入介绍招聘战略之前,先来讨论一下为何说参与开源才是有效的招募工具,当然不仅仅只招募到了就完事了,留住这些顶级的人才也是一件非常有挑战的事(我们会在下一个章节详谈)。

有效的招募意味着可以找到开发者的动机。如果你能够找到是什么吸引开发者为你工作,而且是在贵司的开源项目(或者说通用的开源),那么你就可以根据这些来打造吸引人才的战略了。

Camille Fournier 称工程师需要三样东西:回报、尊重、以及目标。

  • 回报: 薪水、福利、奖励等一切有形的价值。
  • 尊重: 这个比较模棱两可,但并不意味它不是真的,这需要内行来识别、认可。
  • 目标: 一个高度可见的、充满挑战的、而且是可以衡量的目标,没有目标,上述的回报和尊重就无法存在。

“钱很重要,但它的功能也仅仅是作为被认可的一个起点,而并非真正的价值,这就是为什么对冲基金经理可以在获得600万美元的奖金后选择退出,因为他们原本期望的是800万美元。这也是为什么来自项目领导者的个人笔记或其在博客中的发言会流传至今。这里请认真考虑、适当拿捏,钱真的很重要,但是我们要将金钱的部分和情感的价值部分区分开。” – Jeff Osier-Mixon,来自 Intel 公司的开源社区经理

很有意思的是,如果一家公司能够为其员工提供专职,而为上游开源社区贡献,那么其实就实现了上述的三个目标。截止目前为止,越来越多的公司已经通过各种角度验证了雇佣专职的为上游贡献的诸多益处。

已经在很多的开源项目中,一些公司已经在为开源做出特定的贡献,从而推动他们自身的工作和产品。如果方法得当,这样的贡献可以赢得开发者的信任和尊重,对外来说公司会赢得社区的尊重。对于开发者来说,通过做出靠谱的贡献可以提高其在社区的知名度,在满足当前工作的情况下还能为未来的工作赢得机会。

然后,仅仅为开发人员提供时间和公司资源来让他们为开源项目和开源社区做贡献,还不足以吸引和留住顶级人才。公司必须去完善自身的战略,这个战略须是以开源转型为中心的 —— 从开发工具到日常文化、以及整体的开发方法和哲学理念。

“我们在寻找创造一种优秀人才想要参与的工作环境,是其中的一部分。我们的工程师非常明白他们是工作在开源友好的环境中,在这里他们可以获得很好的支持,并且被鼓励到相应的开源社区做他们相关的工作。” – Gil Yehuda, Oath (Yahoo + AOL) 高级总监

开源项目留住人才的挑战

开源招募最大的挑战之一:开源项目它不在公司的管辖范围。首先而且也是最重要的,你要明白,开发者们在为他们自己的项目而工作,这也就意味着只要是用到该开源项目的公司,都需要他们,他们可以随时选择自己认为合适的公司。

但是,这也从侧面说明了另外一个问题,这些开发者们的动机是为开源做贡献。钱或者某个具体的工作并非是他们的最终目的。他们的职业生涯途径是灵活的,由一种为了专业发展和自我实现所持续内在的力量所驱动 —— Fournier 称之为 尊重,而 Osier-Mixon 称之为 认可。据最近的开源工作调查报告,开源的开发者们称,他们的工作最具吸引力的就是能够工作在感兴趣的项目上,和来自全球的人在一个社区进行协作,而且还可以挑战最前沿的技术。

这种流动性较大的情况,是开放所必然导致的结果。贡献者的工作是完全透明、公开的,所有互联网上的人都可以访问,不仅仅是项目内部的人员。对于将他们在 GitHub 上的活动看作其公开简历的潜在雇主而言也是一样的。这样的情况就是,如果你是求职者,这是非常好的优势,但是如果你是公司的话,那么这样的情况实在是令人头疼。

“开源对于人力资源部门和工程部门都是一把双刃剑,一方面,你希望这些人工作的地方是开放而自由的,大家可以为开源项目做贡献,让他们能够独立的创造更多价值;另一方面,公司层面的响应通常是‘ 如果你让他们更加的吃香,他们就会被竞争对手挖走’,是的,而且绝对会被挖走。 这就是为什么拥有让他们想要继续在其中工作的开放文化是如此重要。” – Guy Martin, Autodesk (Open@ADSK) 开放总监

就是这样一个现实,当那些非常在意投资回报率和注重层次组织(官僚)的公司看到这样的情况,会觉得很不解,也感到他们受到了挑战,尤其是看到开发者们可以来去自如,简直无法忍受。

一种新的雇佣理念

要做到转变观念非常重要的就是去理解开源的开发者可以在贵司的多个层面上展现,要知道他们是以公司的名义去为外部的项目做贡献的,而且这些项目是贵司从业务战略和产品开发的角度考虑过的,更何况他们也参与到贵司的开源项目。

为贵司的开源项目吸引和留住开发者一点也不亚于贵司传统的雇佣员工的方式。要记住,贵司的目标是维护和培养每个项目的商业生态,而这些都恰好发生在公司的内外部。

还有一些公司的做法颇让人大跌眼镜,那就是期望通过提高员工的工资来阻止员工为开源社区做贡献。这样做一定会弄巧成拙。而且,从开源社区雇佣人才之所以有必要,是因为可以为项目找到有相关经验的人才,而这样的做法无异于涸泽而渔。正确的做法是支持开发者们在公司内外部的所有工作。

“我们真心确保有来自这个地球上最顶级的贡献者为我们的项目贡献力量。如果他们在我司工作,非常的好,另外他们在其它地方工作,也是没有问题的。重点在于这些人在一起工作,共同打造优秀的项目,共享成功!” – Gil Yehuda, Oath (Yahoo + AOL) 开源高级总监

当一家公司准备好拥抱开源的转变时,这种人才的招募与留用的理念转变不过是文化转变的一部分罢了。

或许,对于公司来讲,转变中最大的困惑来自于这些开源开发者的特殊性:他们在同一个项目下工作,却随意在不同的公司流动。其实,这对于公司雇主还是开发者都是受益的。

“那 Yocto项目来说吧,多名开发人员和至少两名管理人员曾为不止一家公司的YP(Yocto项目)工作过。因此,他们倾向于更关注项目对于世界其它地区的价值,而不是制造一种仅对在专有环境中生产它的公司有价值的产品。” – Jeff Osier-Mixon,社区经理,来自 Intel

所以最终,是共赢的局面。这是就开源之道,也是开源项目和开发人员的独特价值。

何时决定招募或培养

贵司的雇佣和留人策略不仅对于公司,也对于那些公司内外部的人才,都是意义非凡的。本指南则着重于雇佣开发者战略。(也就是说留住留不住还要看公司本身。)

不同的公司面对开发者的来来去去、起起落落会采取不同的雇佣和留用人才的策略,举例来说,有的公司提供更多的培训和项目参与的机会,为的是吸引更多的开发者加入;而另外一些宁愿去选择扁平式的方式来为开发者提供支持。

“ 我们尝试在开源中雇佣到有经验的人,因此,我们偶尔会进行课程上的指导,而不是在开源过程中进行正式培训。然而,所有的开发者都会有加入开源的困惑,帮助他们是我们义不容辞的事情,因为他们成功了,我们也就成功了。我们不仅帮助项目,我们更加会关注项目中的人。” – Gil YehudaOath (Yahoo + AOL) 开源高级总监

无论如何,归根结底,贵司发展开源人才的策略在内部只有两条路可走:要不雇佣,要么自己培养。别无选择。

招募经验丰富的开发者

招募经验丰富的开发者必须是贵司计划中的一部分。任何一个开发人员要在任何项目中建立关系并获得影响力都需要花费时间。 尤其是对于贵司影响很大的项目中,任何的影响项目延迟都会导致公司内部项目可用性上严重的问题。

如果贵司想在开源社区中迅速提供影响力,而你目前的雇员还没有任何的贡献,或者是微不足道,那么找一个现有的不仅用于足够的技能,而且在项目中有相当的影响力,对于贵司来说,既可以满足应急的需求,又可以提升社区的长久影响,可谓是最佳选择。

“开源中的专业技能和领导力,如果是在一个已经存在很久的公司中去从头开始培养,那需要耗费相当长的时间,需要将培训融合在一起,并开始与公司的员工合作,着手培养他们这种领导能力。但是,如果有在社区已经拥有这些能力的人加入,会加速这一过程。” – Guy Martin Autodesk 开放总监 (Open@ADSK)

又或者可能会出现这样的情况,原先贵司通过各种努力雇佣了一名在关键项目上顶级的开发者,但是他没干多久就走人了,而这段时间还不足以培养出顶替的人才,这就尴尬了。千万要记住,影响力是跟随个人的,而不是他们所工作的公司。

开源之道注:在中国,这个文化现象非常值得关注。恰恰相反,中国大多数时候是看公司,而不是看人。

拥有丰富经验的开源开发者还能够帮助公司内部去建设开源的文化以及树立在开源社区的领导力。对于招募来说,一个明智的策略就是不仅要获得顶级人才的能够带来的全部益处,而且能够让他们的才华得到充分的发挥。

很大一部分招聘经理会认为成功的招募是靠口碑而不是靠营销。是的,这样传统的方式已经有效的运行了很多年了,不过面对新的挑战,人力资源和招聘团队正在探索新的招募开发者的方法,如最佳实践就包括在 GitHub 搜索项目: 贵司已在使用的项目中寻找顶级的开发者,说不定他们正在寻找新的工作机会了,或者他们会推荐给你同样优秀的人才。

一旦确定了在项目社区中内外部对于贵司非常重要的那些顶级的或优秀的开发者之后,请询求他们的意愿合作同事名单,并将这些人员也作为招聘的目标。

内部培训人才计划

从公司的层面来看,招聘顶级开源开发者所付出的努力,在反观结果,就会感到备受挫折。因为这些人才实在是难得,而公司又需求非常的大。当然,其中的原因有很多,举例来讲,一家新进入开源领域的公司遇到这样的情况是非常正常的。

在不断寻求缓解人才短缺的方法中,这些雇主们会退而求其次,只好转向自己内部来进行人才的培养。可想而知,如果公司没有那些关键的开源开发人员,培训项目对填补技能差距和培养继任计划候选人就显得至关重要。培训也是对开发者寻求提升自身技能是很有帮助的。

用户或客户项目的开发者,长远来看,他们也是下一代维护者合适的候选人。当然,也要花时间去培训那些对于开源有兴趣,有意愿做出贡献的开发者。请相信,培养下一阶段的开发者并将他们纳入开源决策制定过程是值得的。

开发者通过为开源项目所做的技术贡献而获得尊重和认可,他们在开源社区的领导力也是同样的方式获得的。当然,但这些并不是他们能够建立威信的唯一地方。

能够在高知名度的职位就职,以及和项目的优秀开发人员一起工作,都是非常大的加分项。这样的机会对于那些经验丰富、知名度高且富有天赋的工程师来说,是蛮有吸引力的。

非正式的在职培训 和顶级的开发者一起工作,本身就是最好的培训。

导师制 是一项构建组织力蛮好的方式,还毋须付出更多的花销。高级的、富有经验的开发者帮助初级的、很少经验的开发者来解决问题,并帮助他们学习开源方法论和熟悉开源文化。

学徒制 经常在有顶尖开发人员的密切监督下的组织层次清晰的公司中见到,通过这些日常的参与来提升培训效果。

企业提升开源发展影响力的8个步骤:

  1. 从开源项目中招聘关键的开发者和维护者,对于贵司非常重要。
  2. 鼓励开发者去参与到和贵司产品相关的开源项目上游,并确定好比例。
  3. 建立一个导师计划,让资深且更有经验的开发人员指导初级且经验较少的开发人员。
  4. 不仅要为开发者们提供技术和开源方法论上的培训,还要持之以恒的不断完善。
  5. 参与开源的会议,鼓励开发者并支持他们展示自己的工作成果和想法。
  6. 提供合适的IT基础架构,以允许开发人员与全球开源社区无障碍地沟通与协作。
  7. 建立一个内部系统来跟踪开发人员的贡献并衡量他们的影响力。
  8. 在公司内部,制定贡献计划,并聚焦到对于公司的业务部门和产品线相关的项目。

教你招募开源开发人员的五大绝招

参与到开源社区,是贵司吸引开源开发者第一步要做的事,当然这也是最为重要的一件事。只有这才能让贵司在开源社区中获得知名度和可信度。

当然,怎么参与仍然需要事无巨细的去制定具体的策略和规划的,完成此任务最为有效的招聘策略就是实现完整的开源转型,即采用开源开发者最为熟悉或最愿意使用的合适工具、最佳实践、以及相应的文化。

“应将招聘方式集中于有意识地思考如何改变开源社区对贵司的看法。” – Guy Martin,Autodesk 开放总监 (Open@ADSK)

“ 当一家公司开启了自身的开源实践之路时,那么就意味着这家公司发出了强烈的信号:我们对于开源是认真的,希望在开源中做点什么出来。” – Nithya Ruff Comcast 开源实践高级总监

展示贵司自身在开源项目中所做的工作是非常重要的。因为开发人员会将才能投入到感兴趣的项目上,而这也是招聘能够吸引他们注意力最有效的方式。

总的来说,一下五个关键战略,不仅有助于招募到且留住优秀的开发人员,还有助于获得出于商业战略考虑在开源方面的整体投资。

1. 参与开源项目并赢得领导力

参与开源要提升到战略高度 尤其是对于贵司的目标项目而言,加大开源项目的参与度可以让贵司获得一定的曝光度,进而吸引到在该项目中经验丰富的开发者。以这样的形式招聘到人,简直是绝配。

参与到匹配贵司将来需要的项目会帮助贵司赢得下一波项目的人才。举例来说,很多公司都在投资到基于云计算的技术、大规模的数据分析、以及机器学习等领域,如果贵司想要在这些领域上吸引开发者,那么贵司就需要再相应的开源生态中现在就投入有实质的积极参与。

“当下的技术,尤其是云计算,开源是无处不在的,这样的情况下,我们就必须指望公司内部的开源人才去驱动创新的发展。” – Guy Martin,Autodesk 开放总监 (Open@ADSK)

同样的情况在大规模数据分析领域也发生着。举例来说,Hadoop 开源项目,这是大数据革命的中心,它之所以能够问世,Yahoo 在其中起了关键的作用,所以雅虎对Hadoop有着独到的理解,现在,Yahoo做为 Oath 的一部分而继续存在着,以其在其他大规模计算项目中的成就而闻名,同时吸引了有兴趣发展自身大数据技能的开发人员。

作为公司可以通过为开源开发者建立理想之地,进而吸引那些需求提升自己特定技术的开发者。即使是初创公司,亦或者是那些还处于萌芽中的公司,均可以在公开的开源项目中贡献,以建立他们的信誉和影响力,进而吸引人才,其实这个过程都可以在正式产品发布之前就可以进行。开发者在开源中是拥有选择权的,所以公司要做的是提供他们加入的通道。

参与到开源中,需要对于社区的动态有相当的理解,最好是有一些相应的经验。在开源社区拥有一定影响力的维护者均满足这些技能,而且运用的也相当的好。如果可以的话,请把他们招致麾下,可以帮助贵司打造内部的开源文化和吸引其它顶级的开发者。这样就形成了一个正的循环,现有的人可以从这些高手们学习,并为内部提供指导,然后可以帮助到后来所招聘到的人,更进一步在开源社区提高影响力。

“对于那些从来没有在开源项目或开源社区中干过活的人来说,我们帮助他们理解所有他们不应该做的事情,理解所有法律上和社区会让他们面临麻烦的事情,和他们应该做的事情,比如如何处理同时工作在同一个项目下的其它公司有着不一样目标的人员,以及如何管理外部的社区等。” – Gil Yehuda Oath 开源高级总监 (Yahoo + AOL)

作为公司参与到开源,要赢得尊重和建立领导地位不能只靠某个个人。为了能够通过时间的验证,贵司需要表现出真正的干货,而不是某个人的三分钟热情。因为人总是会流动,哪怕他是最有动力的开源领导者,离开了他,贵司就又得从头再来。所以,要以公司的身份参与其中,且这是团队的优先任务。

做有意义的贡献。 这也就是意味着贵司要去做那些重头活,而不是蜻蜓点水,一笑而过。要将员工的开源贡献与他们的工作成果联系起来,而不是仅仅作为一种工作鼓励,这会让您的开发人员专注于工作,同时还要在社区中赢得认可,并吸引更多的开发人员加入贵司。不要担心,利好消息是,贵司的贡献进一步影响到开源项目往贵司的需求方向发展,这不仅帮助到贵司的员工获得曝更多的关注和吸引到更多的人才,还确保了贵司所依赖的开源项目会支持贵司下一步的技术方向。这就是开源的美妙!

支付开发人员薪酬,让他们为开源做贡献,留出时间从事开源工作。 因为贵司的成功是和这些开发者以及项目的成功是直接关联的,最好的策略就是确保开发者有时间参与到贡献上游当中,而且是高优先级的,这是确保项目的成功的充分条件。至于具体的安排则可根据实际情形而定。举例来说,Guy Martin 和 Ibrahim Haddad 在三星做开源的时候,他们“被戏称为50%的独裁者”,因为他们严格要求开发人员花费50%的有偿工作时间向上游做贡献。具体是多少不重要,重要的是要安排出时间。

开源您自己的代码,创建小型试点项目,并不断重复成功。 为了能够在项目中拥有一定的影响力,你必须建立起领导力来,要建立领导力,你必须以身作则。你一开始可以通过将小型的项目开源,来作为试点,进而通过不断的小打小闹的成功来一步步的建立领导力和赢得信任。如果你开源的项目很有趣,那么自动就会吸引一些开发者过来。即使代码和项目没有那么的酷炫,但是有实际的用处,你也可以通过向整个社区证明你的价值,然后获得追随者。

“如果贵司比较类似于 Salesforce,那么工程师其实不知道去Salesforce能干点啥,他们并非是贵司产品的用户,而且他们也没有必要去了解贵司的产品,但是如果他们看到了贵司的开源项目,会说’这家公司做的东西还是很靠谱的‘,这其实是一种让外部去理解内部所做的工程机会,或称之为窗口,没有这扇窗的话,他们一定不会理你。” – Ian Varley, Salesforce 软件架构师

2. 创建内部开源文化

工具和实践. 开源文化在感觉上可能与企业界显得格格不入,但是拥抱她也没有那么的可怕。在企业界,项目团队通常不会允许其他团队的开发人员贡献代码,因为它可能会破坏他们的开发节奏。而恰恰相反,开源项目非常欢迎外部的参与,而且会维护两个版本,一个版本通常是较稳定的,而另外一个则是更为活跃的保持开放的。如果你能够在公司内部采用开源的流程的话,那么就会收获外部开源项目带来的好处,总有意想不到的想法出现。

开源开发者使用的工具也往往和企业界有所区别,而且往往需要不同的基础设施或平台。要知道协作是开源所有事情的核心,所以首要的任务就是,为开源开发人员搭建一套能够支撑来自全球开发者无障碍沟通的平台!

激励和奖品. 正如本指南前面所提及的,开源的开发者的激励来自三个方面:回报、尊重和目标。一份有竞争力的薪水可以将他们吸引进大门,但是要留住他们、用好他们,还得靠他们贡献给开源的工作能够被赏识。

这样赢得尊重的通道应该有,而且一定搭建好了这样的通道,请务必让它持续的存在下去。而且还应将该通道写入招募和留用策略中。口碑才是招募的王牌,将这些通道扩散出去,让社区的人们进行讨论。

最后要强调的是,正如 Camille Fournier 在其演讲中所谈及的一个词:要频繁的露脸(ship often),开源开发者们喜欢看到自己的作品出现在最终的产品中,非常享受这种完成一件事的感觉,非常自豪的打上一个完成的标记。请为开源开发者们建立相应的战略和流程,以让开发者们能有一个目标,而且经常能够看到自己工作的成效。将具有挑战性的工作与负担较小的工作相结合,以防止他们疲惫,同时使他们保持较高的兴趣度。

3. 参与并支持开源活动

鼓励开发者到研讨会和线下会议做演讲。 毫无疑问,优秀的代码和社区领导力所形成的声誉能够吸引人才,但是,想要招聘更多的人则需要在此基础上走的更远一些,通过策略式社交网络,在技术大会上做演讲,以及和其它开源项目进行写作等方式,即让公司内部的优秀的开发者吸引更多的优秀人才。

和你在公开的地方培训他人写代码、帮助他们解决问题非常的相似,人们也可以利用线下活动来验证一下想法,或者是宣布一个新的开源项目。开发者们如果是从写代码的开发者们获得的信息,那么就会倾向于使用这些项目。那样的话,贵司就可以吸引到未来的开发者,而且还可能在未来将他们招致麾下。

赞助开源活动以及在活动中设立展位。 开发者们到研讨会是为了听取新的开发模式、感兴趣的项目,以及很酷的公司。既然他们来到了现场,那就是客人,难道你不应该招呼他们吗?为开源活动提供赞助,以及设立展位均是清晰的展现贵司、以及贵司对开源社区支持的诚意,甚至是为开发者提供工作机会的最佳方式。

举办黑客松 从各方面来看,具有挑战性的项目对于技能高超、经验丰富的开源开发人员是最具有吸引力的。编程马拉松是有奖励(现金奖励或可炫耀的荣誉)的有趣的挑战,所以它们是贵司招聘工作的完美补充。此外,还可以获得评估他们的第一手工作的额外好处。

4. 将开源相关纳入工作描述jd

当下的技术几乎所有的核心部分都是开源的,因此关于开源的技术工作描述也应该被撰写。请告诉潜在的应聘候选人,技术岗位希望是有贡献开源项目和管理过开源项目的。

现在,大多数的开发者都在用开源的技能来打造自己的竞争力。这些开发者希望找到能够用到他们的经验、施展他们在开源项目和社区中学到的才能。请向他们展现出贵司对于开源非常的在意,那么贵司就会赢得开源开发者的注意,赢得维护者、贡献者、提交者们的信任。如果招聘角色有开源的相关内容,请重点强调。其实在当下的技术栈中,含有大量的开源软件项目,无论贵司处于那一行业,几乎都会多多少少涉及到开源,那么请不要吝惜笔墨,告诉开源的开发者们,你需要他们。

5. 要培训 —— 从内部培养人才

正如本指南开篇所谈,拥有丰富经验的开源开发者们正在成为稀缺人才,既然外部难求,贵司又不能停止前进的步伐,那么只能从公司内部加强培训的项目,从而加强和更新现有人才的储备。另外,你还有做好为关键项目拥有备选人员,这样的话,即使发生人员流动和自然减员(这些事经常发生)也不至于措手不及。

开展培训的方式可以有很多种方式:从提供旨在解决特定开源问题(许可证合规、贡献者流程、代码镜像)会议,到菜鸟与更有经验的开源开发人员一同工作的学徒培训方式,再到提供解决疑难杂症的引导示范等等,作为开源项目办公室,可以将上述方式以正式或非正式的方式来组织,无论形式如何,要确保这些培训落地才是最为重要的。

有关招聘与人才留用战略的其他想法,请参阅本指南的前身,即2015年发表的 :《如何招聘和聘用开源开发人员》

致谢

贡献者:

  • Jeff Olser-Mixon, 开源社区经理 (Intel公司)
  • Gil Yehuda, 开源高级总监(Oath)
  • Guy Martin, Autodesk 开放总监(Autodesk)
  • Nithya Ruff, 开源实践高级总监(Comcast)
  • Ian Varley, 软件架构师 (Salesforce)

这些资源是与TODO(公开对话,开放式开发)小组 – Linux基金会的专业开源程序网络小组合作创建的。 特别感谢那些贡献自己的时间和知识来制作这些综合指南的开源项目经理。 参与的公司包括Autodesk,Comcast,Dropbox,Facebook,Google,Intel,Microsoft,Netflix,Oath(Yahoo + AOL),Red Hat,Salesforce和Samsung。 要了解更多信息,请访问 todogroup.org。我们邀请您在GitHub上下载、传播,如果可以请积极的参与这些指南。