GSoC, or Google Summer of Code, is an annual program funded by Google to enhance the Open Source Culture and projects. The idea is to get students involved and familiar with the open-source community and putting their summer break to good use!
The selected students gain exposure to real-world software development and employment opportunities. Sounds good, isn’t it? The code that you will create is released under an open-source license that people from across the world can use.
You might be wondering, “How do I get selected for GSoC”? There is no fixed recipe for this, but you can follow the following guidelines for your success in GSoC.
- Learn Development
What does development mean here? It signifies that you should be capable of using a code to develop software. The program could be a web page, server or machine learning model. You have to choose the area of your interest very carefully.
For instance, if you are fond of working of web pages, then frontend development should be your field. Similarly, if you are fond of automating the tasks, then AI should be the specialization for you.
Try out different fields and see what suits you the best. Once you are sure, learn to develop programs in that area.
- Start as early as possible
The earlier you start preparing for it, the more are your chances of selection. But not the question arises – “How to start”? Read on.
You can go through the list of participating organizations and see if you are interested in their projects. You can also suggest your ideas to them. If an organization shows interest in you, join their developer’s mailing list. While this works with most organizations, you must always show keen interest in their organization. This will improve your chances.
Effective communication with your mentor is crucial as it will decide every other thing. You are not going to have meet ups with mentors to discuss things as GSoC is a remote program.
- Understand how Git works
As the project development scales up, you will need more people and simultaneously a collaboration system that tracks all the work. That is where Git comes into action. It is an essential tool that allows multiple people to work on a project.
You can keep your project in synchrony by tracking updates as and when they happen. Generally, people use Git to access GitHub, where people share their projects. A plus point is the version control where people can work on different sections and finally combine them together.
- Writing a quality proposal
GSoC is a highly competitive program (don’t get scared by this) and every year Google turns down many students. A common reason behind the rejection is a poorly written proposal. While writing your proposal just keep in mind that it represents you in front of the judges.
Clearly state the problem statement that you want to solve. Do not forget to mention why this is a problem in the first place. This will get you an edge over your competitors.
After that mention the technical aspects of the project. Mention the following key points under this section:
- A list of things you find challenging
- Stuff that you have no clue about, at the moment.
- Any other issues that you might possess.
Do not leave it here only. Mention how you would work upon these issues and your approach to solving them.
Remember as a GSoC student you are an apprentice. But in return, you will have an amazing time and opportunity to learn from the best developers across the world, that too on a one-on-one basis!
You will get invaluable experience while doing what you love – writing great code. If these are not your reasons to participate in GSoC, then maybe you are in the wrong place. Need help with building technical skills? Feel free to check out the courses by CodingNinjas.