Redian新闻
>
我们是如何聘请开源开发人员的 | Linux 中国

我们是如何聘请开源开发人员的 | Linux 中国

科技
 
导读:我的团队不再采用标准的算法编程笔试,而是采用一套能够产出更多相关成果的流程。               
本文字数:3228,阅读时长大约:5分钟

作为初创安全公司 Profian🔗 profian.com 的首席执行官和联合创始人,我参与了我们聘请开发人员从事 Enarx🔗 enarx.dev 的工作。Enarx 是一个处理机密信息计算的安全项目,几乎完全用 Rust 语言🔗 opensource.com 编写(少部分用汇编语言)。Profian 现在已经在这次招聘找到了所有要找的人,一些开发人员将在接下来的几周内开始工作。然而,Enarx 绝对欢迎新的贡献者,如果事情继续顺利,公司将来肯定会雇用更多的人。

招聘人员并不容易,加上 Profian 还有一系列特别的要求,这让招人变得更加困难。因此我认为分享我们如何解决这个问题应该还蛮有意思的,而且也会对社区有帮助。

我们寻找什么样的人才?

以下就是我前文提到的特别要求:

◈ 系统编程:Profian 主要需要那些喜欢系统层编程的人。这一层面的编程已经处于栈的底层,有很多直接与硬件或操作系统的交互。例如,要创建客户端-服务器部分,我们必须编写相当多的协议、管理加密等等,而这方面的工具还不是很成熟(请参阅下面的 “Rust” 一节)。
◈ Rust:项目几乎都是用 Rust 语言编写的,那些不是的则是用汇编语言写的(目前只有 x86 平台,尽管随着我们添加更多平台情况可能会有所改变)。Rust 是一门很新、很酷同时也令人兴奋的编程语言,但它同时也很年轻,并且一些领域没有你想要的所有支持或者没有你希望的那么成熟 —— 这包括从密码学到多线程库到编译器/构建基本架构。
◈ 分散各地的团队:Profian 正在建立一个能够及时通讯联系的团队。Profian 在德国、芬兰、荷兰、北卡罗来纳州(美国)、马萨诸塞州(美国)、弗吉尼亚州(美国)和乔治亚州(美国)都有开发人员。我在英国,我们的社区经理在巴西,我们有来自印度和尼日利亚的实习生。从一开始我们就知道团队很难聚集在一个地方工作,因此我们需要能够通过视频、聊天和(最不济的情况下)电子邮件与人交流和协作的成员。
◈ 安全:Enarx 是一个安全项目。虽然我们并不是专门在寻找安全专家,但我们需要能够将安全放在首位去思考和工作,并设计和编写适用于安全环境的代码的人。
◈ Git:我们所有的代码都存储在 Git 中(主要是 GitHub🔗 github.com,还有一些存在 GitLab)。我们围绕代码的大部分交互都是围绕 Git 进行的,因此任何加入我们团队的人都需要能自如使用它作为日常工作中的标准工具。
◈ 开源:开源不仅仅是许可;更是一种心态,同时,这也是一种合作方式。大量开源软件是由不同地域的人创建的,他们甚至可能不认为彼此身处于一个团队。我们需要知道我们招的人不仅能在公司内部凝聚成一个紧密的团队,同时也能够与组织外部的人员协作,并接受 Profian 的“默认开放”文化,这里的开放不仅仅限于代码,还要有开放的讨论、沟通和文档。

我们是如何找到人才的?

正如我在其他地方提到的,招聘很困难🔗 aliceevebob.com。Profian 使用多种方式寻找候选人,它们取得了不同程度的成功:

◈ 领英招聘广告
◈ 领英搜索
◈ 特定语言的讨论板和招聘板(例如,Reddit)
◈ 外部招募人员(特别致敬来自 Interstem🔗 www.interstem.co.uk 公司的 Gerald)
◈ 口耳相传/个人推荐

虽然很难从质量方面判断这些来源如何,但如果没有外部招聘人员,我们肯定会在数量上苦苦挣扎(我们也有一些来自该途径的优秀候选人)。

我们如何筛选出想要的人才?

我们需要按照上述的所有要求衡量所有候选人,但并非所有要求都是同等重要的。例如,虽然我们热衷于雇用 Rust 程序员,但那些在系统级别具有强大 C/C++ 技能的人也能成为团队里有用的一份子,因为他们能够很快掌握 Rust 语言。另一方面,熟悉使用 Git 是至关重要的,因为我们无法花时间去培养新团队成员,让他们跟上我们的工作方式。

你可能会觉得很惊讶,但强大的开源背景并不是必需的要求,在类似模式中工作的心态是必需的,而任何有开源参与历史的人都可能对 Git 有很好的了解。同理,在一个分散各地的团队中工作的能力这一条件上,我们认为有过任意开源社区的参与经历都会是个积极的指标,因为有如此多的开源项目都是由分散各地的人们完成的。至于安全这一条件,我们则一致决定这只是一个“锦上添花”的条件。

我们想让这个过程简单快捷。Profian 没有设置专门的人力资源部门或人力职能,因为我们正忙于编写代码。以下是我们最终使用的招聘流程(实际流程中可能略有不同),我们试图在 1-2 周内完成招聘:

1. 初审:个人履历/简历/GitHub/GitLab/领英主页,决定是否面试
2. 我作为 CEO 和候选人进行一场 30-40 分钟的讨论,了解他们是否适合我们团队的文化,同时让他们有机会了解我们,并了解他们是否真的像在初审提交的材料中所说的那样精通技术
3. 由 Nathaniel 领导的有关技术方面的深入讨论,通常我也在场
4. 与团队其他成员谈话
5. 编码笔试
6. 快速决策(通常在 24 小时内)

编码笔试很关键,但我们决定不采用通常的方法。我们的观点是,许多科技公司钟爱的纯“算法编码”笔试对我们想要的几乎毫无用处:考察候选人是否可以快速理解一段代码,解决一些问题,并与团队合作完成以上的工作。我们创建了一个 GitHub 存储库,其中包含一些几乎可以正常运行的 Rust 代码(事实上,我们最终使用了两个,其中一个用于技术栈上层的人),然后让候选人修复它,在上面执行一些与 Git 相关的过程,并稍作改进,在此过程中添加测试。

测试中一个必不可少的部分是让候选人通过我们的聊天室与团队互动。我们安排了 15 分钟的视频通话时间用于设置和初始问题,两个小时用于做笔试(“开卷”——以及与团队交谈,鼓励候选人使用互联网上所有可用的资源),然后是 30 分钟的总结会议,在这个会议上团队可以提出问题,候选人可以思考任务。这个谈话,结合笔试期间的聊天互动,让我们了解了候选人与团队沟通的能力。候选人挂断电话之后我们通常会在 5-10 分钟内决定是否要雇用他们。

这种方法通常效果很好。一些候选人在任务上遇到困难,一些人沟通不畅,一些人在 Git 交互方面做得不好 —— 这些是我们没有雇佣的人。这并不意味着他们不是优秀的程序员或者以后不适合该项目或公司,但他们不符合我们现在需要的标准。在我们聘用的开发人员中,他们的 Rust 经验水平和与团队互动的需求各不相同,但 Git 专业知识水平以及他们在和我们讨论之后的反应始终足以让我们决定接受他们。

感想

总的来说,我不认为我们会对筛选过程进行大的改动 —— 尽管我很确定我们可以在搜寻过程环节做得更好。通过编码笔试,我们可以筛选掉相当多的候选人,而且很好地帮了我们挑选合适的人。希望通过了这次选拔的每个人都很适合这个项目并且产出出色的代码(以及测试和文档等等)。时间会证明一切!


本文最初发布于 Alice、Eve 和 Bob – 安全博客🔗 aliceevebob.com 上,经许可后重新发布。


via: https://opensource.com/article/22/2/how-we-hired-open-source-developer

作者:Mike Bursell 选题:lujun9972 译者:XiaotingHuang22 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

LCTT 译者 :Xiaoting Huang
🌟🌟
翻译: 2.0 篇
|
贡献: 5 天
2023-02-11
2023-02-15
https://linux.cn/lctt/XiaotingHuang22
欢迎遵照 CC-BY-SA 协议规定转载,
如需转载,请在文章下留言 “转载:公众号名称”,
我们将为您添加白名单,授权“转载文章时可以修改”。

微信扫码关注该文公众号作者

戳这里提交新闻线索和高质量文章给我们。
相关阅读
如何在 Linux 中使用 SCP 安全地传输文件 | Linux 中国如何在 Ubuntu 和其他 Linux 下安装 IDLE Python IDE | Linux 中国云开发人员需要了解的硬件知识 | Linux 中国部分生产人员、管理人员和销售人员的薪酬计入研发费用,是否准确、合理?创业板IPO《2022 中国开源开发者报告》正式发布!硬核观察 #896 谷歌裁掉了很多重要的开源开发者Linux Mint 21.1 发布:大量的视觉变化和改进 | Linux 中国Live Captions:Linux 上的开源视频字幕应用 | Linux 中国如何在 Arch Linux 中安装 MATE 桌面 | Linux 中国如何在 Arch Linux 中安装 GNOME 桌面 | Linux 中国大红大紫,大吉大利。。OBS Studio 29 发布,但对 Linux 用户来说变化不大 | Linux 中国世界上只有两个 Linux 发行版:Arch Linux 与其它 | Linux 中国Manjaro Linux 22.0 发布 | Linux 中国在 Linux 中使用 “Converter” GUI 工具转换和操作图像 | Linux 中国如何在 Linux 中更新 Flatpak 软件包 | Linux 中国初级与高级开发人员的区别Valve向Steam Deck软件的开源开发者支付报酬适用于 Linux 的五大流媒体直播应用 | Linux 中国回顾 2022 五个最佳 Linux 发行版 | Linux 中国在河南的五七干校, 里面有些猫腻如何在 Linux 系统中使用 Ventoy 创建多重引导的 U 盘 | Linux 中国蔚来试驾车冲进人行道致一死一伤;威马员工被曝停薪留职,研发人员称已通知不用上班考勤;华为研发人员撤离赛力斯?公司回应丨雷峰早报硬核观察 #857 Valve 付费给 Steam Deck 软件的开源开发者韩国年轻女钢琴家中国新冠死亡超过百万的可能性如何在 Linux 中使用旧相机作为网络摄像头 | Linux 中国天赋“易昺(bǐng)”,创造历史!如今的很多回忆录,对获取情报是“说得轻巧吃根灯草”, 更别说送情报更难如何在 Linux 中降级 Flatpak 软件包 | Linux 中国在 Linux 中创建定时器 | Linux 中国如何在 Linux 系统中访问 UEFI 设置 | Linux 中国试试这个 Linux 网络浏览器作为你的文件管理器 | Linux 中国使用 PCManFM 文件管理器让你的 Linux PC 轻装上阵 | Linux 中国在 Linux 上试试这个基于 Python 的文件管理器 | Linux 中国
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。