我是如何通过开源方式找到我梦想中的工作的

开源 开发人员
2021-01-19 16:44:49
43 0 0

默罕默德说,他在13岁时得到了第一台电脑,这台电脑在埃及刚刚普及,几乎立刻就开始学习编码。他说,闪光是吸引他的原因,它的动画和色彩,以及“闪光”的东西。

他笑着回忆起自己的第一个网站,一个用Macromedia Flash构建的关于尼罗河的信息页面。“出于某种原因,”他说,“我认为在网络视图中添加一条来回移动的鱼可能会很聪明,所以我让这条插图很差的鱼在网站上到处移动,包括文字和图像,我为此感到骄傲。”

这条插图很差的鱼激发了赛义德的兴趣,作为一个青少年,他跟上网络开发的新技术。最终,他将进入机械工程学院学习,但当他决定编程是自己的职业时,他就辍学了(他是56%没有计算机科学或相关领域学士学位的开发人员之一)。

上个月,Mohamed Said成为Laravel的第一个全职员工,Taylor Otwell构建的开放源码PHP框架。

奥特威尔把这个框架作为一个辅助项目来构建,当它启动时,他辞去了工作,开始全职工作。就在几个月前,他决定需要帮助维持这个项目,并公布了自己的第一份全职工作空缺,并表示这是一个明显的选择。

“当我采访Taylor时,”他说,“只花了10到15分钟。”他的开源工作实际上是他所需要的所有应用程序和采访,展示了这个行业的一个增长趋势:你所做的(以及能够证明的)对开发人员的职业生涯产生的积极影响要大于你面试的好坏,你在哪里面试上过学,甚至认识谁。“我的第一个拉拉维尔拉请求是在2016年2月。”仅仅8个月后,他就全职从事这个项目。

我和赛义德坐了几分钟,讨论他是如何从开罗一个13岁的男孩编程flashfish成长为一个每天为他最喜欢的开源项目工作的人的。

PHP和Laravel

赛义德的第一份网络开发专业工作是在埃及的一家公司,当时他19岁。“这是相当基本的,”他说,“只是HTML和基本的东西。”他的职业生涯将使他进入网页设计和WordPress,但在他自己的时间,他开始学习PHP。这样,他基本上是自学成才的,这反映了我们在2016年开发者调查中看到的趋势(69%的受访者至少部分自学成才)。

21岁时,赛义德找到了自己的第一份PHP开发工作,当一位朋友向他介绍Laravel PHP框架时,他开始在Twitter上关注著名的Laravel爱好者Dayle Rees和Jeffrey Way,并查看他们的Laravel教程。他说,他很快就喜欢上了这个框架,“因为文档非常清晰彻底,让一切看起来都很简单。”

开源

赛义德说,尽管他是一名开发人员,但他从未对任何开源代码做出过贡献。他甚至没有想到用“开源软件”来形容拉威尔;这只是他可以用来把工作做得更好的另一个工具。但他也开始自学iOS开发,并发现他想分享自己的代码,于是他开始创建自己的GitHub存储库,开始涉足开源领域。

他继续在工作中使用Laravel,但直到5.2版在工作中使用它时遇到问题,他才对它做出任何贡献。他开始挖掘并试图解决这个问题;最终他找到了一个修复程序并将其提交给了Laravel存储库。奥特韦尔回答说,他们讨论了这个问题,最终他的贡献被合并了。

这是赛义德第一次真正的开源经历,也是许多开发者所熟悉的:他对自己使用的软件没有兴趣,直到在工作中遇到挫折。Laravel的特性和它的开源代码使他能够解决他所面临的问题,并与其他人分享这个解决方案,这正是他一直以来对开源和Laravel特别感兴趣的原因。

下个月是他第一次为开源软件做贡献的一年,也是他第一次向Laravel提交pull请求的九个月。在他看到自己的一些代码被合并之后,他说,“我想在laravelgithub存储库中的贡献者列表上看到我的名字。”这种与社区的直接联系以及被认可和认可为其中一部分的愿望是开发人员刚刚开始探索开源的强大动力。

所以他继续挖掘,寻找增强代码的方法,并提交pull请求。如今,他在拉雷维尔有148个投稿人,是第五大投稿人。他也是奥特韦尔在2016年拉雷维尔会议上发表的主旨演讲中提到的两位贡献者之一——这证明了他作为社区成员和贡献者的价值。

当他成为Laravel社区的一员时,他开始撰写文章,为Laravel构建插件和软件包,并以任何方式为社区做出贡献。他说:“我想在很多地方把我的名字传出去,贴在拉雷维尔身上。”。“能成为这个社区的一员真是令人兴奋。”

因此,当奥特威尔发布了一个职位空缺,为他的第一个开发人员雇用,说申请。他和Otwell已经合作了一年的大部分时间,通过开源贡献,所以Otwell知道他能做什么,并且知道他对这个框架有着深刻的理解和赞赏。

奥特威尔雇佣他全职在拉威尔工作,赛义德说,这是他职业生涯中最激动人心的举动。他现在的工作都深入到开源领域,审查pull请求并发布报告,像以前那样挖掘框架以获取乐趣。

路障

赛义德说,在中东,开源不像在西方那么受欢迎。他认为,这是因为开发者一天的工作比传统的9点到5点要花更多的时间和精力。在中东,开发人员经常24/7随时待命,他们没有时间或精力“免费”从事开源项目;当你已经花了那么多时间工作时,整个概念似乎是在浪费宝贵的时间。

赛义德仍然住在开罗,他说他希望有更多的中东开发者参与到开源中来。他现在对社区和那里正在做的工作充满热情,相信每个人都有贡献。对于他的中东同行,他说开源不是浪费时间,而且有着不可估量的好处。毕竟:开源让他摆脱了24/7随叫随到的生活,找到了一份他真正热爱的全职工作。

为什么要贡献?

赛义德坚信每个程序员至少应该尝试一些开源的参与。他说,这些好处远远超过了任何障碍。

“我最喜欢这份工作的一部分,”他说,“就是我每天学到的东西。”他说,他在开源领域学到的东西比他之前所有的教育和工作经历都要多。“能够看到这么多其他人的代码,亲眼看到他们是如何工作的,这让我学到了很多。”

因为开源软件是公开的,所以你可以学习它,学习成为一个更好的程序员。当你公开分享你自己的代码时,你可以邀请评论和讨论来提高你的技能。当你发现并报告错误时,你可以将这些问题添加到你的知识库中,并且知道不要自己重复同样的错误。

赛义德是一个典型的例子,走非传统的道路,以一个新的工作。他没有通过一家公司获得晋升,而是每年都以新的头衔和升职来扩充自己的简历。他没有申请,然后通过没完没了的面试和白板测试。由于他对开源的贡献,他找到了理想的工作。

开源文化

赛义德说,对开源的贡献为他打开了新的天地。它允许来自世界各地的开发人员合作、协调和共同创造。“我希望每个人都能为开源代码做出贡献。没有世界各地的人分享他们的代码和贡献,就没有拉威尔,也就没有社区。”

许多开源支持者认为平台不仅仅是构建软件的一种方式,而是一种生活方式。访问、透明和公开讨论是许多人非常重视的文化的所有方面。

如何开始?

赛义德认为,中东和其他地区的许多开发人员对开放源码社区感兴趣,但不知道如何开始:“他们认为必须等到有了完美的东西。”赛义德坚持认为,事实并非如此。他鼓励开发人员深入挖掘他们最喜欢的项目,特别是他们日常使用的软件,并寻找可以为现有代码提供“增强”的地方。

他认为,开源是开发人员在面试中能展示的最好的体验。“技术面试官想要一件事,”他说:“让我看看你的代码。”你可以分享你为日常工作编写的代码,但它可能是非个人的、无聊的,甚至是私有的、封闭的源代码,所以你根本不能分享。工作中的一些代码是作为团队的一部分完成的,你无法分辨出你做了什么和简在大厅里做了什么。另一方面,开源就是你的全部。这是你的激情,它是公开的,它上面有你的名字。

塞德说,开放源码是开发人员真正发挥作用、展示他们所能提供的东西的地方。它是公共的,并且是一个社区的一部分,它为您的代码提供验证和批准。这对于你的职业生涯是非常有价值的。

对于埃及一个13岁的男孩来说,多年前他就被Flash的功能迷住了,开源软件改变了一切。“最大的好处,”他笑着说,“是我在拉威尔得到了内幕消息,而且我比社区里的其他人都知道所有新特性。”

找到一份好工作有很多方法。赛义德是一个例子,我们认为这是一个日益增长的趋势:开发人员找到自己的方式,通过自己的职业生涯,使用的工具,他们必须提高水平。

作者介绍

用微信扫一扫

收藏