6

Tell HN: How to contribute to open source as a junior engineer

 1 year ago
source link: https://news.ycombinator.com/item?id=33268414
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

Tell HN: How to contribute to open source as a junior engineer Tell HN: How to contribute to open source as a junior engineer 15 points by Shindi 57 minutes ago | hide | past | favorite | 8 comments

Hi all, just wanted to write a brief guide on how to contribute to open source.

Saw a thread from a new engineer who wanted to know how to prove that they can work fully remote in order to get a fully remote job. Getting these type of jobs are harder as a junior employee because you don't have a track record.

Contributing to open source demonstrates you go out of your way to improve code, can make changes to a new code base on your own, and can ask for help to get unstuck. Not only can it help you get a remote job, it'll improve your chances at getting prestigious jobs.

I made a few small open source contributions and made some mistakes so want to share what I learned.

1. Find a good project

What is a good project? One looking for help, in a language you know, and where you can get the project running on your own.

If you look around github, you'll see some projects have issues with a Needs Help or a Good First Issue tag. Someone on the project thought that these issues are small and self contained enough to get your feet wet.

Another good sign to look for is that the project has recent commits and is active.

2. Find a mentor

Before contributing a change, you should ask someone whether your plan makes sense. Just like in algorithmic leetcode style interviews, you should never hop in and write code right away. You should explain your plan in plain English, and get the interviewer on the same page.

Likewise, if you see an issue you think you can help and have an idea for how to fix it, write out your plan and ask an existing contributor if you can take on this issue and if your plan makes sense.

You'll save yourself so much time discussing before writing code, and you get to network with contributors of projects. I would have saved so much time if I had discussed first instead of trying to implement my own ideas.

protip: if the project is owned by a company, the employees typically have to help you and contributing to their project will give you first dibs on jobs.

Projects typically have discords or community pages where you can find discussions and find mentors. You can try DMing relevant people (see who contributed via git blame) and straight up ask if they can help you implement your change.

tldr: find a good project with good first issues, find a mentor before writing code, ..., become a legend.

Hope this was helpful!


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK