帮助中心 开源

“Accomplished X by implementing Y which led to Z.”

“通过实现导致Z的Y来完成X。”

When I interviewed for software engineering internships this past fall, my open source contributions helped me stand out from the crowd.

去年秋天,当我接受软件工程实习机会的采访时,我的开源贡献使我在人群中脱颖而出。

我是谁? (Who am I?)

I am a 2nd year student pursuing a computer science major, as well as minors in applied mathematics and business management at Wentworth Institute of Technology (WIT) in Boston, MA.

我是二年级学生,攻读计算机科学专业,并在马萨诸塞州波士顿的温特沃斯技术学院(WIT)攻读应用数学和商业管理专业。

My main programming languages are JavaScript (Node.js & React.js) and Java. I’m also familiar with Python, R, SQL, NoSQL, MySQL, Firebase, HarperDB, and MongoDB.

我的主要编程语言是JavaScript(Node.js和React.js)和Java。 我也熟悉Python,R,SQL,NoSQL,MySQL,Firebase,HarperDB和MongoDB。

技术面试 (Technical Interviews)

You can find so many resources on how to prepare for a technical interview. All of them will tell you to study your data structures and algorithms, and definitely do not forget that lovely Big O notation. Some articles will also tell you to have side projects and put them in a wonderful virtual portfolio. I’d like to share one more thing you can do to set your self apart, contribute to open source projects.

你可以找到这么 多 的资源 就 如何 以 准备 为 一个 技术 面试 。 所有这些都会告诉您研究数据结构和算法,并且绝对不要忘记那个可爱的Big O表示法。 一些文章还将告诉您拥有辅助项目,并将其放入一个出色的虚拟产品包中。 我想分享您可以做的另一件事,以使自己与众不同, 为开源项目做出贡献

为开源做贡献 (Contributing to Open Source)

Many of my interviews began by discussing my contributions to the freeCodeCamp curriculum and guides projects as well as some higher level Git concepts such as handling merge conflicts, cherry-picking commits, and managing commit history during squashing.

我的许多采访都是从讨论我对freeCodeCamp课程的贡献开始的,并指导了项目以及一些更高层次的Git概念,例如处理合并冲突,精心挑选的提交以及在压榨期间管理提交历史。

It is extremely easy to get involved in the freeCodeCamp open source community. There is an incredibly active Gitter chat room and plenty of exciting projects being developed. If you are looking for an easy introduction to open source development join the Gitter chat and you may even see me there!

进入freeCodeCamp开源社区非常容易。 有一个非常活跃的Gitter聊天室,并且正在开发许多令人兴奋的 项目 。 如果您正在寻找开源开发的简单介绍,请加入Gitter聊天室,您甚至可以在那里看到我!

Another popular interview topic are my open source side projects. My first NPM module, harperdb-nodejs-driver, was a very common discussion topic. I learned a lot through developing this such as unit testing, code coverage, deployment scripts, branch management, and automatic builds. It still needs some work, but it introduced me to a lot of niche open source development practices.

另一个受欢迎的采访主题是我的开源项目。 我的第一个NPM模块harperdb-nodejs-driver是一个非常常见的讨论主题。 通过开发此工具,我学到了很多东西,例如单元测试,代码覆盖率,部署脚本,分支管理和自动构建。 它仍然需要一些工作,但是它向我介绍了许多利基的开源开发实践。

Finally, in almost every single interview, I was asked about my contributions to the React.js, Node.js, and Fastify projects. Contributing to larger projects can be difficult but it is not impossible, and in fact a lot of developers love it when new contributors want to contribute to their project! Below, I’ve broken down how I got involved in contributing to these 3 projects.

最后,几乎在每一次采访中,我都被问到我对React.js,Node.js和Fastify项目的贡献。 对较大的项目进行贡献可能很困难,但并非不可能,事实上,当新的贡献者想为他们的项目贡献力量时,很多开发人员就会喜欢它! 在下面,我细分了如何参与对这三个项目的贡献。

Node.js (Node.js)

My first contribution to the Node.js project was in October of 2016 when I attended the Node.js Code & Learn at the Node.js Interactive North America conference in Austin, Texas. I was only a first-year student and my university helped pay for part of the trip. The conference was such an incredible experience that I attended it again this year in Vancouver, Canada. I have multiple merged pull requests on the Node.js project, a majority coming from the Code & Learn event. Recently I’ve been trying to branch out and find other open issues.

我对Node.js项目的第一份贡献是在2016年10月,当时我参加了在德克萨斯州奥斯汀举行的Node.js互动北美会议上的Node.js代码和学习。 我只是一年级的学生,我的大学帮助支付了部分旅行费用。 这次会议真是令人难以置信的经历,我今年又在加拿大温哥华参加了会议。 我在Node.js项目上有多个合并的合并请求,大多数来自Code&Learn事件。 最近,我一直在努力寻找其他未解决的问题。

React.js (React.js)

React.js is my favorite framework. It was fun to learn and it is even more fun to build applications with. Even more so, the React community is one of the best I have ever been apart of. One of my biggest developer role models, Dan Abramov, is very active in the React.js open source community and I’ve had the incredible opportunity to work with him directly on multiple issues.

React.js是我最喜欢的框架。 学习很有趣,使用它构建应用程序更有趣。 更重要的是,React社区是我有史以来最好的社区之一。 我最大的开发人员角色模型之一Dan Abramov在React.js开源社区中非常活跃,我有不可思议的机会直接与他合作处理多个问题。

I’ve been able to find open React issues by doing 2 things:

通过做两件事,我已经能够找到开放的React问题:

  1. Following the React repository and looking at every issue opened. If I think it is something I can handle I ask if I can work on it and see if there is any other good information I should have before starting.跟随React仓库并查看每个已打开的问题。 如果我认为这是可以解决的问题,请问我是否可以进行处理,并在开始之前查看是否还有其他好的信息。
  2. I follow as many React contributors I can on Twitter and keep a lookout for new, exciting projects as well as any open issues. Sometimes Dan will post ‘good first issue’ tweets!我在Twitter上关注尽可能多的React贡献者,并关注新的,令人兴奋的项目以及任何未解决的问题。 有时,丹会发布“好第一期”推文!

Some other awesome React developers to follow include:

其他一些很棒的React开发人员可以关注的包括:

Sophie Alpert Ryan Florence Sebastian Markbage Brian Vaughn Andrew Clark Michael Jackson Cassidy Williams Kent Dodds

苏菲阿尔珀特 瑞安佛罗伦萨 塞巴斯蒂安Markbage 布赖恩·沃恩 安德鲁·克拉克 迈克尔·杰克逊 卡西迪·威廉姆斯 肯特兹

Also check out this list put together by Dan himself.

还请查看Dan自己整理的这份清单 。

There are many incredible React projects to contribute to as well including React Router, Redux, React Native, React VR, and Create React App.

还有许多令人难以置信的React项目,包括React Router,Redux,React Native,React VR和Create React App。

固定 (Fastify)

Fastify is a fast and low overhead web framework for Node.js. It is inspired by projects such as Express and Hapi. Created by Tomas Della Vedova and Matteo Collina. I was introduced to the project during the 2017 Node.js Interactive North America conference where I met Matteo. Matteo encouraged me to dive head first into the project. He also shared some incredible tips for contributing and learning new things:

Fastify是一个用于Node.js的快速,低开销的Web框架。 它受到Express和Hapi等项目的启发。 由Tomas Della Vedova和Matteo Collina创建。 在2017年Node.js互动北美会议上,我认识了Matteo,并向我介绍了该项目。 Matteo鼓励我首先投入该项目。 他还分享了一些令人难以置信的技巧,以帮助他们学习新事物:

  • Do not be afraid of failing

    不要害怕失败

    There will be times when you get things wrong, or you simply don’t have the skill set to complete an issue. This is perfectly okay and many project maintainers will be there to support you and show you the way.

    有时候,您会出错,或者根本就没有能力解决问题。 这是完全可以的,许多项目维护人员将在那里为您提供支持并向您展示方法。

  • The only way you will learn new things is by putting yourself out there

    学习新事物的唯一方法就是将自己放在那里

    When I first contributed to Fastify I knew very little about back-end servers. From working on that project I added many new skills to my tool-belt and have a significantly better understanding of the back-end ecosystem.

    当我第一次为Fastify做出贡献时,我对后端服务器了解甚少。 通过从事该项目,我为工具带增加了许多新技能,并对后端生态系统有了更好的了解。

结论并带走 (Conclusion and Take Away)

Interviewing is an exciting experience and will be different for everyone. Open source software is a growing community, “GitHub reached 24 million developers working across 67 million repositories” (GitHub).

面试是一次激动人心的经历,每个人都会有所不同。 开源软件是一个不断发展的社区,“ GitHub吸引了2400万开发人员,工作在6700万个存储库中”( GitHub )。

Capitalize on your skills and leverage your experience whenever you can. Don’t be afraid of making mistakes (I made one in the middle of writing this article!), and make sure to learn from them. Even though the open source world may seem scary, be brave and remember there are other developers out there looking to support you!

充分利用自己的技能,并尽可能利用自己的经验。 不要害怕犯错误 (在撰写本文时,我犯了一个错误 !),并确保向他们学习 。 即使开源世界似乎令人恐惧,也要勇敢一点,并记住还有其他开发人员希望为您提供支持!

*My contribution graph is sparse in July and August because during the summer I was a summer camp counselor and did not spend much (if any) time on my laptop. I would encourage everyone to take time off every once and a while, I promise it won’t hurt your progress and will actually feel really refreshing!

*我的贡献图在7月和8月比较稀疏,因为在夏天,我是夏令营的顾问,并且没有花很多(如果有的话)时间在笔记本电脑上。 我鼓励大家每隔一段时间抽出一点时间,我保证这不会损害您的进步,并且会真正让您精神焕发!

If you have any questions feel free to reach out on Twitter.

如果您有任何疑问,请随时联系Twitter 。

You can also find me on GitHub and check out my website ?

您还可以在GitHub上找到我并查看我的网站 ?

Happy coding ? and good luck on your own interviews! ?

编码愉快吗? 祝您面试顺利! ?

翻译自: https://www.freecodecamp.org/news/how-contributing-to-open-source-can-help-you-achieve-a-software-engineering-internship-5c13841452cd/

帮助中心 开源

帮助中心 开源_对开源的贡献帮助我获得了Microsoft的实习机会。 这就是它可以为您提供帮助的方式。相关推荐

  1. 开源代码 不开源_提供开源代码反馈的4个最佳实践

    开源代码 不开源 在上一篇文章中,我为您提供了如何获得反馈的提示,尤其是在您第一次免费和开源项目的背景下. 现在该讨论同一枚硬币的另一面: 提供反馈. 如果我告诉您您所做的贡献是"愚蠢&qu ...

  2. 桌面助手开源_用开源设计桌面游戏

    桌面助手开源 按需印刷行业是我最喜欢的技术创新产品之一. 它消除了网守,消除了物理批量生产的瓶颈. 它为任何人提供了一个好主意,并激发了产生它的动力,使他们的工作走向世界. 按需打印与开放源代码软件相 ...

  3. 特斯拉 开源_特斯拉开源其安全软件,好莱坞开源,更多新闻

    特斯拉 开源 在本期开放源代码新闻摘要中,我们介绍了特斯拉开放源代码的安全软件,好莱坞的新开放源代码基金会,Creative Commons的80万美元投资等等. 特斯拉分享其车辆安全软件 为了更广泛 ...

  4. c2c旅游springboot开源_重量级开源的商城和SpringBoot等项目看看有没有正好是你需要的...

    1. JavaGuide Github地址: 同下 star: 18.2k 介绍: [Java学习 面试指南] 一份涵盖大部分Java程序员所需要掌握的核心知识. 2. mall Github地址: ...

  5. devops 开源_没有开源,就不会有DevOps

    devops 开源 如果要进行DevOps,我们必须放弃开源. 对? 等等,我们是一家敏捷商店,所以我们也必须放弃它. 对? 在过去的五年左右的时间里,我与很多人混淆了"进行DevOps&q ...

  6. 1:1 人脸比对 开源_在开源周宣布青年:1月13日至17日

    1:1 人脸比对 开源 2014年1月13日至17日,我们在Opensource.com举行了有史以来首届"开源周青年活动"! 我们很高兴为您提供坚实的一周内容,重点关注当今儿童和 ...

  7. 开源 非开源_一个开源糖果店里的孩子

    开源 非开源 当我在大学学习C和Perl时,我就通过沉浸被介绍给开源. 与仅从教科书中学习的以前的编程语言(如BASIC和Pascal)相比,我在Internet上下文中学习了C和Perl. 我会在U ...

  8. 汽车维护管理软件开源_感谢开源和自由软件维护者的10种方法

    汽车维护管理软件开源 每天,我都会使用高质量的软件,这些软件是由不要求付款,尊重我的自由以及慷慨地投入精力和精力的人们开发和维护的. 在这个感恩的季节,我鼓励那些也使用和欣赏开源和自由软件维护者的人们 ...

  9. 智慧气象 开源_来自开源的半条命11条智慧

    智慧气象 开源 谷歌的软件工程师布拉德·菲茨帕特里克 ( Brad Fitzpatrick)致力于Go编程语言,是一生的书呆子. 他的父亲在英特尔工作,所以他在技术上长大. 他从中学时代开始编写软件, ...

最新文章

  1. 阐述一下Mysql事务的四个特性_数据库事务的四个基本性质?
  2. 密度聚类 DBSCAN python实现
  3. 破除Odoo 菜单栏提示 99+
  4. 状态同步与帧同步的简介
  5. 背水一战 Windows 10 (30) - 控件(文本类): AutoSuggestBox
  6. js用button激活 Alert 元素关闭按钮的交互功能
  7. SQL语言基础:SQL语言概念知识笔记
  8. 用python玩转数据慕课答案第四周_大学慕课用Python玩转数据章节测试答案
  9. IDEA远程连接mysq数据库
  10. mybatis generator使用_SpringBoot整合Mybatis实现自动生成代码 || 附阿里P8独家SpringBoot视频资料...
  11. 使用selenium启动(无界面)浏览器的隐私模式
  12. react的单文件编写方式
  13. 线序 RS232 RJ45 USB
  14. 2.3 The 10-armed Testbed 10摇臂老虎机试验台
  15. 侦探小明:如何判断电脑里突然出现的流氓广告来自哪个软件?
  16. elementui表格序号自增
  17. java毕业生设计房屋租售网站计算机源码+系统+mysql+调试部署+lw
  18. Scrape Center爬虫平台之spa8案例
  19. 明日之后服务器维护到几点,明日之后:凌晨三点停机维护,优化排队体验,百万阴兵要撤退了?...
  20. JavaFX界面跳转

热门文章

  1. 阿里P7亲自教你!我的头条面试经历分享,完整PDF
  2. java 多重属性_最全面的44个Java 性能调优细节
  3. 实验五 网络编程与安全-----实验报告
  4. 装饰器3--装饰器作用原理
  5. (第2篇)一篇文章教你轻松安装hadoop
  6. Java基础--访问权限控制符
  7. 怎么查询局域网内全部电脑IP和mac地址..
  8. LINUX环境搭建:安装中文定制版UBUNTU 10.10
  9. iview日期控件,双向绑定日期格式
  10. 9 月 19 日,腾讯云安全中心监测到  Apache Tomcat 修复了2个严重级别的漏洞, 分别为: 信息泄露漏洞(CVE-2017-12616)、远程代码执行漏洞(CVE-2017-12615