参与开源项目有很多极好的理由。你可以学习一门新的语言,提高你现有的技能,接受来自该领域顶尖社区的挑战,甚至可以更好地管理复杂的分布式项目。也有许多参与方式。打开一个项目的错误跟踪器,找到一个需要修复的问题。编写一个有用的新扩展或插件。即使你不懂代码,几乎每个开源项目都需要更多的测试、更多的文档和教程,以及帮助处理其支持论坛和邮件列表的负载。如果你是开源软件的重度用户,那么回馈为社区贡献了如此之多的东西感觉很棒。
参与开源项目最容易被忽视的原因之一是职业发展。开发人员、项目经理、测试人员和技术文档编写人员都以他们的技能来评判,还有什么比公开展示你的能力更好的方式呢!我一直怀疑情况就是这样,但没有办法真正量化开源参与对潜在求职者的意义。因此,我开始去了解。这是一系列文章中的第一篇,内容是关于雇主、招聘人员和其他开发人员如何看待开源贡献,如何最大限度地利用你的工作,以及如何在你的简历中体现它。
如果你在科技领域工作,你可能会经常收到招聘人员的消息。这似乎是科技从业者找到新工作的更常见方式之一。这包括为特定公司工作的企业招聘人员和为许多不同客户寻找候选人的自由职业招聘人员。为了了解这些专业人士如何看待开源经验,我稍微颠倒了角色。在过去的几个月里,每当有招聘人员就某个职位联系我时,我都会回复一个反建议:我热爱我的工作,不想离开,但我想采访你。几乎所有人都很配合,经过几个月的时间,我收集到了一些有趣(如果只是传闻)的信息,关于他们的客户公司如何使用开源,他们如何看待开源经验,甚至还有一些关于开源项目如何成为招聘人员的肥沃猎场的信息。
我发现的大部分都在意料之中,但也有一些惊喜。招聘人员和他们的客户普遍对所有级别参与开源项目的人持积极看法。宾夕法尼亚州一家公司的企业招聘人员甚至说:“我认为活跃于开源社区的人都是摇滚明星。普通员工每天工作八小时,摇滚明星在下班后继续工作,不是因为他们不得不这样做,而是因为他们想这样做。我不认为世界上有哪个雇主会认为这有什么负面的。”虽然我个人不太喜欢 “摇滚明星”的比喻,但这个观点很有道理。那些在职业要求之外进行编码、编写文档、测试和以其他方式做出贡献的人,表现出对工作的热情,而雇主会觉得这种热情非常有吸引力。
使用开源技术的公司自然而然地会倾向于那些活跃于这些技术生态系统周围的人。例如,如果一家公司正在寻找优秀的 Drupal 开发人员,那么在 Drupal 支持论坛、模块贡献者甚至提交日志中搜寻活跃、有能力的候选人是很自然的。这是挖墙脚吗?也许是,但那是招聘人员工作的一部分。随着开源软件继续融入 大大小小的 IT 组织 的结构中,这种趋势只会继续下去。招聘人员知道在哪里找到具有他们所需技术经验的人,而那些在其项目社区中活跃的人在寻找工作时将具有优势。
稍微谨慎一点,不要认为偶尔参与开源项目等同于工作经验。根据我的采访,除非在极少数情况下,否则它不被视为这样。例如,如果你是 Linux 内核的核心贡献者,你当然可以声称等同。如果你发布了一些错误修复并编写了一两个插件?那就差远了。就业的意义远不止你的技术工作。它意味着与同事相处融洽并在团队中工作。它意味着构建客户需要或想要的东西,而不是编写代码来满足你自己的特定需求,这在开源世界中经常发生。为满足自己而编写代码很棒,但这与为满足客户的规范而编写代码不同。还要非常注意在项目论坛和邮件列表中保持积极和专业。发布到这些论坛的内容基本上会永远存在,你无法控制内容的保留,因此请务必尽力而为。你不会希望潜在的雇主在谷歌上搜索你的名字,然后发现一堆琐碎的争吵和谩骂。
在本系列的第 2 部分中,我开始采访一个更加难以捉摸的群体:CIO。
4 条评论