Contributing to open source can significantly boost your chances of getting a job. And even though this is true for all developers, regardless of their level of experience, it's especially important for entry-level ones.
Let me make this perfectly clear: contributing to open source is the most effective job-seeking hack you can take advantage of right now.
Even better, by contributing to open source you won't only improve your chances of getting a job, but you will also give back to the community, meet amazing and talented people, and feel incredibly accomplished when your first contribution gets accepted.
At Microverse, the company I founded, we train remote software developers from all around the world, and we ask them to contribute to open source, starting from their first day in the program.
Here are six reasons why contributing to open source will help you too.
Reason 1: Work as part of a (distributed) team
When looking for a job, experience counts. However, experience limited to coding and the language syntax is not enough. You need to know how to work as part of a team, collaborating with others to build large and complex applications.
How do you get that kind of collaborative and at-scale experience if you can't get a job first? The answer is open source.
Large, open source projects are almost always built by a large team. Sometimes the people in those teams even work for large organizations (e.g. GitLab, React/Facebook, etc.). By becoming a contributor you get the chance to work with those exceptional teams without having to be hired by those companies.
You will sharpen your written communication skills, understand how to pick and negotiate things to work on, perfect your Git Flow/GitLab Flow, and many other things that are as valuable as understanding the language syntax.
Reason 2: Work in a complex and large application
If you join a company, you will most likely work on an existing application. And, probably, it will be a large and complex one. As a coding student you rarely have the chance to do that, but when you join an open source project, that's exactly the scenario that you will face.
You will first need to set up your local development environment following the contributing guidelines provided by the project. You will then start by refactoring existing code to correct typos and fix small bugs, the same way you would at a regular job! Finally, you will start understanding how all the pieces of a large application fit together, how it was architected, and where the code for each functionality lives.
These are not things you could experience working on small learning projects, but you need this kind of experience if you want to land a job.
Reason 3: Get a lot of good feedback
Every time you pick an open source issue to work on, you will start by forking the project and creating a feature branch. You will write tests and code until you are happy with your solution, and then submit a merge request to the original code.
However, this is just the first step in the process. One of the main developers at the project will review your merge request and will tell you if it's ready to be merged. Most likely it won't. But that's fine, because she will also provide feedback about what you need to fix before your code can be merged.
Can you imagine getting this kind of direct feedback from a seasoned developer at GitLab or Facebook? Think about it… they really want your help, but they also need to keep the quality of the code at a high level. They will help you, and you will end up learning a lot in the process.
Reason 4: Build an online reputation
Getting experience working as part of a team and contributing to large and complex applications is really important, but it won't help you land a job unless companies can find you and want to interview you.
Contributing to open source will help you with that too. After quickly reading your resume, employers will want to find you online, and they will want to see your code. GitLab and GitHub profiles are the new resumes.
If employers can see that you are an active member of large open source projects, that will tell them something else that is very important: software is not just what you do for a living, but it's also your passion and hence what you do in your free time.
What do employers currently find when they search your name on Google? Open source will make you look great!
Reason 5: Network with the community
Open source projects often have large organizations behind them who are constantly hiring new developers. Wouldn't it be great for those organizations if they could hire people who love their product? What if their new hires knew the product so well already that they could be productive contributors from the moment they join the company?
Well, that's exactly the value you offer as an active member of an open source community. You know the product, you know the code, and the people behind the project know you. Chances are that you will eventually be offered to work for them. In fact, almost a third of the first 40 engineers that GitLab hired were contributors to its codebase first.
Reason 6: Stay motivated
Last, but not least, we all know the single and most important advice to be successful at anything is perseverance. However, staying motivated and focused while learning to code and applying for jobs is not easy. There are a lot of things to learn, a lot of different paths to take, and many rejections on the path to landing your first job.
Joining an open source project will give you the real-world encouragement and a community to support you throughout the journey.
Are you convinced that contributing to open source is the best thing you can do right now to help you on your way to landing your first job? I'm pretty sure you are. Go ahead and start now!
About the guest author
Ariel Camus is the founder of Microverse, a company finding the world's untapped talent and training it to become remote software developers. Ariel was previously the co-founder and CEO of TouristEye, a travel startup that he grew to a million users and sold to Lonely Planet in 2013.
Cover photo by Maik Jonietz on Unsplash