获得开源理想工作的 7 项技能

目前没有读者喜欢这篇文章。
How to get a job with open source

Opensource.com

O'Reilly Media 的创始人兼首席执行官 Tim O’Reilly 提出的一个著名的行动号召 是“做有意义的事情”。但是,如果一边做有意义的事情,一边还能获得报酬呢? 如果你掌握了合适的技能,外面有很多与开源相关的工作。

惠普的开源参与总监 Mark Atwood 在今年 (4 月 2 日至 3 日) 在佐治亚州亚特兰大举行的 Great Wide Open 会议上发表了关于如何获得这些令人敬畏的开源工作之一的演讲。 他的演讲最初是针对学生的,但他后来删除了“给学生的建议”部分,因为以下七个技巧实际上适用于任何想要获得他们理想的开源工作的人。

“当你从事开源工作时,你可以从事有益于世界的事情,”Atwood 说。 他补充说,“你必须在获得工作之前完成工作。” 他还提到,在开源社区工作时,你会发展出非常好的同伴和最好的朋友。 从事开源是一种生活方式,它拥抱了一种哲学。 更重要的是,Atwood 指出,“一旦你找到了一份开源工作,你就可以随意流动了。”

虽然他的演讲更深入地探讨了手头的主题,但这是他对所提供技巧的总结。 我鼓励任何通过做自己喜欢的事情获得报酬的人在评论中添加他们的建议。

开源求职者的 7 个技巧

沟通技巧

学习如何清晰地写作。 在你写完东西后,让人编辑它。 然后根据你收到的反馈重写它。 你需要知道的最重要的语言与编码无关,它是英语。 Atwood 还说,写作的另一个关键是经常写作。

学习如何说话。 在电话和餐桌旁清晰地说话。 对于公开演讲,Atwood 推荐 Toastmasters。 “见面并讲话。 讲话和写作,”Atwood 说。

保持可联系。 公布你的电子邮件,以便人们可以联系你。 不要担心垃圾邮件。 最后,Atwood 强调说:“不要做混蛋。 你的声誉很难改变,而互联网是永恒的。”

技术技能

学习编程语言,即使你想做 IT 工作。 对于任何不精通编码语言或已经学习编码语言的人,Atwood 推荐两种语言。 首先是 Python,因为它易于学习和阅读。 还有 JavaScript,主要是因为它无处不在。 但是,如果你已经在学习一种编码语言,请不要停止学习它。 Atwood 继续建议每六到十二个月学习一种新语言。

学习如何使用调试器。 你还需要学习分布式源代码控制,今天这意味着 git 和 GitHub。

人际关系和同伴

“开源之所以有效,是因为它是一个共同工作的社区。”

要在社区内建立这些关系,首先要寻找当地人见面。 使用 Meetup.com 等工具并搜索联合办公空间、黑客空间以及当地学校和图书馆/中心的俱乐部。 然后,寻找全国和世界各地的远程人员。 首先通过搜索互联网来了解他们和他们的项目。

参加会议和活动。 这是与人交流和与他们面对面见面的好方法。

在建立这些关系并与你的开源同伴会面时,Atwood 再次建议,“不要做混蛋。” 他这次补充说,“不要令人毛骨悚然。”

工作

当 Atwood 说“你必须在获得工作之前完成工作”时,他是认真的。 他说:“找到一个项目并参与其中。” 注册邮件列表并登录 Stack Overflow。 开始阅读问题和答案,然后开始回答问题。 开始阅读该项目的错误,然后开始修复错误。 在你对此感到满意后,考虑添加功能请求,然后编写这些功能的代码。

在工作之前完成工作,你就是在建立你的技能和你的信誉。 而且,在开源世界中,声誉非常重要 (更多内容见下文)。

协作

与世界各地的人们协作,并开始使用开源项目使用的工具。 你需要熟悉 IRC (互联网中继聊天)、错误跟踪器和电子邮件列表。 使用 git 学习有关拉取请求和日志评论也是一项重要的技能。

学习如何进行代码审查和配对编程。 为什么? 因为你们两个人会比你们中的一个人更聪明。 这将使代码更好,并消除其中的自我。

声誉

在开源世界中,你希望其他人了解你在做什么。 拥有你的工作组合以及你的邮件消息、提交和其他贡献。 通过这样做,你将能够将你的作品集与你的简历配对。 (一些雇主可能会将你作品集中的工作放在比你简历上列出的工作更高的层次上。)

保持你的 LinkedIn 个人资料和社交媒体个人资料是最新的。 再次,Atwood 强调:要容易找到——没有人想浪费时间寻找联系你的最佳方式。

获得那份工作

你如何找到职位空缺? 一旦你找到一个开源项目,你就会发现许多项目都有与之相关的公司。 一旦你建立了你的声誉,你的同伴会将你纳入可能与你的技能相匹配的职位空缺中。 听取会议和活动上的演讲者,以寻找和发现工作机会。 但这并不意味着你应该等待工作来找你。

一旦你有了工作

Atwood 在你开始开源事业后提供了建议。 你应该注意的三件事是你的健康、金钱和继续教育。

关于健康,Atwood 说要通过符合人体工程学的打字来避免极客颈。 此外,不要为混蛋工作。 并且,通过锻炼来照顾好自己——当你锻炼时,你会更聪明,并且你有更多的精力。

关于金钱,Atwood 建议避免债务,最大化你的 401(k) 和 IRA 缴款,并尽早和经常投资——他补充说你应该咨询你的律师和/或财务顾问。

最后,Atwood 说要继续学习。技能将永远胜过聪明。 确保安排时间学习并享受乐趣! 编写有趣的项目或找到一个创客空间并开始修补。

Atwood 推荐了三本书,当你开始你的旅程时

 


 

在评论中分享你获得开源工作的技巧。


Avatar
Jason Hibbets 是红帽公司数字社区团队的社区总监。 他与 Enable Architect、Enable Sysadmin、Enterprisers Project 和 Opensource.com 社区出版物合作。

13 条评论

你好,Jason 先生,

又一篇很棒的文章! 这让我的内心保持激情。 开源万岁! 感谢你分享 Atwood 先生的见解。

<a href="http://www.jobhuntersbible.com/">Richard Bolles 的《你的降落伞是什么颜色》</a> 应该是任何求职者的必读之物,尤其是在这种经济形势下。

关于开源,最棒的事情是你 <strong>可以</strong> 通过从事实际项目来建立自己的名声和发展你的技能,假设你有足够的经济稳定性来拥有一些计算机设备和互联网接入 (许多从事开源工作所需的工具不包含在公共图书馆提供的锁定的工作站中,例如 git。) 相比之下,尝试为学术界建立作品集,其中“产品”是学术研究,这完全是一种痛苦。 我甚至无法进行适当的文献综述,而不必恳求在高等教育领域工作的朋友为我检索期刊文章!

我就是发表讲话的 Mark Atwood。 感谢 Jason 的参与和你准确的文章。

你忘记了最重要的因素之一:生活在一个不是垂死经济的地区,那里的州政府没有对每个可行的行业征税(或迫使他们搬迁)。 如果你不能搬迁,这些技巧都无济于事,你可以眼睁睁地看着波基普西变成下一个底特律。

@jelabarre,这不是真的。 关于开源工作,最棒的事情之一是它们可以远程通勤工作的频率更高。 好的开源雇主并不关心你是否在昂贵的城市。 我认识很多成功的开源人士,他们住在甚至搬到了所谓的“垂死地区”、乡村内陆地区、铁锈地带,甚至只是更宜居的城市。 湾区几乎不宜居或负担得起。 在“经济不景气”的地区拥有高科技工作薪水可能意味着你的钱会花得更远。

很多事情都属于一厢情愿的想法,比如
>不要为混蛋工作。
>并且,通过锻炼来照顾好自己
当然还有
>关于金钱,Atwood 建议避免债务
我想这表示上不了大学了。
甚至“每6个月学习一门新语言”也纯属幻想。
我今天早上在部门会议上提到了这一点,除了一个人,我们公司里最不合群、最老套、最宅的极客之外,大家都笑了。
由于项目截止日期,每周工作60-80+小时,加上孩子,我们IT部门的大部分空闲时间都用于一些免费软件项目。像健身、学习新东西、社交生活之类的事情经常被放在清单的最后(那些不会每隔3天就提醒你割草的事情)。虽然我们有5个人在家里建了小型健身房,这有助于节省大量旅行时间。
如果人们不用工作那么多,他们有很多事情想做。在公园散步、去滑雪、粉刷车库。最大的问题是时间。时间就是新的金钱。你总是可以赚更多的钱,但是金钱买不到时间。
(我们公司非常重视弹性工作制和远程办公,所以我们的员工每周不必花20多个小时在上下班路上。我们也在考虑增加一个小健身房,以追求健康,但主要是为了节省员工的时间)

你好 Sinjin

>>Atwood 建议避免负债
>我想这表示上不了大学了。

我还没有完全到建议大家这么做的地步,但差不多了。在谷歌上搜索“高等教育泡沫”。当然,不要为了一个低质量的非 STEM 学位背负 4 万美元的学生贷款。过去 50 年关于“为了获得学位而负债是值得的”的建议越来越不真实了。如果你觉得你需要一个学位,那就去你能找到的最便宜、质量最好的学校,并且尽可能少地借钱。

拥有一个好的作品集不仅胜过一份简历,甚至胜过拥有学位,在获得开源工作时更是如此。

> 每周工作 60-80+ 小时

没有人能够无限期地维持每周 60-80 小时的工作。你会毁掉你的健康,而且你也不会有生产力,你有效的产出不会比每周工作 40 小时更多。阅读 Lifehacker 的文章:“长时间工作对你的健康和你的生产力有害”。给你的经理们一份。如果他们认为这是“纯属幻想”,那就去找那些真正擅长自己工作的经理,因为这些经理并不擅长。

我将呼应 Mark 的一些评论,并确认是的,时间确实是一种我们所有人都缺乏的货币。明智地管理你的时间可能是我们能掌握的最重要的技能之一。与之互补的一件事是优先级排序。学习一种新的编程语言对于扩展你的工作技能来说是一个高度优先事项吗?那就为此腾出时间。

我想补充一点 Mark 没有涉及到的,我从《全面领导力》一书中借用的,是在多个领域建立“胜利”。这些包括你的工作、你的家庭、你的社区和你自己的个人世界。如果你在午餐时散步 30 分钟,你正在改善你自己和你的工作(因为你正在休息),如果你在散步时捡起一些垃圾,你正在改善你的社区。显然,这是一个简单的例子,这本书会详细介绍,但如果你能让学习一门新语言成为你工作的一部分,那么你就创造了一个双赢。如果你可以为当地的团体/聚会贡献你的时间,那么你就创造了一个三赢,通过改善你的社区。

很棒的对话!

Jason

感谢这篇精彩的文章,我们的时间面临着许多压力,定义目标/正确确定优先级非常重要。作为一个平衡了开源、学士学位和后来的博士学位的人,这比妻子、孩子和工作容易得多! 也就是说,很多观点真的引起了我的共鸣,我真的很喜欢从事开源工作,希望我有更多的时间投入其中,但我也需要优先考虑工作、家庭、锻炼和乐趣! 作为一名版主做志愿者非常有意义,但这需要我认真考虑。感谢 Jason 写出这篇文章,感谢 Mark 分享他的想法!

感谢分享,我喜欢使用 opencart, wordpress, joomla

所有对于有志成为专业 FOSS 开发人员的建议都很棒……我还想指出的是——尽管我强烈支持 FOSS——这些相同的步骤对于非 FOSS 雇主来说也同样具有吸引力,所以如果你想成为一名开发者,这些都是不费脑子的选择……

是的,lightweight,这个建议也适用于非 FLOSS 开发人员。这一点在我的演讲结束后的问答环节中也提到了。

值得注意的是,虽然这种方法对于获得非 FLOSS 工作很有用,但如果你用它来获得 FLOSS 工作,然后继续这样做,它将继续有效,以便获得*下一个*工作。非 FLOSS 开发的风险之一是,你可能会从雷达上消失,当工作结束后,你的作品集和声誉就会出现一个漏洞。

是的,完全同意——我个人不会做非 FOSS 开发,但有些人觉得他们没有这个选择……但趋势似乎是朝着“默认 FOSS”而不是老式的默认专有方向发展。

© . All rights reserved.