Gain experience in Software Engineering as a Student

Gain experience in Software Engineering as a Student

Introduction

As a student myself, trying to get experience is difficult but a great way to gain the skills from experience is by making open source contributions. Contributions to open source can be made in various ways such as fixing an issue on a GitHub repo, writing documentation for a readme and also writing articles. In this article, I will mainly focus on making contributions to GitHub repositories.

Open Source Contributions

The great thing about open-source is that you have access to these codebases which are worth thousands if not millions of dollars and the source code is completely free for anyone to use. Some examples of open source repos you can contribute to include Node.js: https://github.com/nodejs/node, vscode: https://github.com/microsoft/vscode, TypeScript: https://github.com/microsoft/TypeScript, Cal.com: https://github.com/calcom/cal.com etc. The software of these code bases have millions of users and you can make contributions which will benefit this many people.

Making Contributions

Once you have found a repository that you're interested in, fork and clone it. The next step is to read the documentation to see how you are supposed to run the project and if you're having any trouble with running the project you can find help from the developers by checking if there is a discord server or mailing list where you can join to ask for help usually there is some sort of platform.

In the beginning, remember to focus more on understanding the codebase and what the project does because then you will have a better idea of what issues you can fix. Next, you can go to the GitHub repo and check the issues section to see if there are any beginner-friendly issues or intermediate-level issues which you can attempt.

It's very normal to feel overwhelmed or like you don't know what you are doing so when working on a large project just remember to be consistent with the amount of time you dedicate to the project because learning anything new takes time.

Making a Pull-Request

When you have fixed the issue make sure to commit/push your changes and create a pull request talking about the change made. It may take some time for your pull request to get merged but once a developer has reviewed your pull request they will either merge it or they will give you feedback to work on. This feedback will give you a better idea of what to improve on in your code and remember that implementing feedback is what makes you a good developer. Once you have done that you can create a new pull request and if everything is good then congratulations your pull request is merged 🥳.

Showing Contributions in CV

After making a few contributions you can show this experience in your CV because you have simulated a work environment. This is the type of work an actual software engineer would do so showing this experience in your CV can be valuable to recruiters and hiring managers. Here is an example of how you can structure it in your CV:

If you want to use the same resume template that I use then checkout: resume.lol. Here I have given the role of open source contributor and then the name of the company which has the repo you contributed to. Then you can include the technologies which you used and underneath that you can write in bullet points about your contributions.

Follow my open-source projects here: https://github.com/N00rAhmed