Note that this is skewed towards landing open source internships as a code contributor but of course, there are various other ways one can contribute to open source.
Last year, a schoolmate, Gift Muoneke, posted on LinkedIn about the call to apply for Google Summer Code. This was my very first time hearing about such a thing. Before then, I do not think I knew there was anything like open-source internships. Looking back now, I think I can remember hearing about Outreachy and the MLH fellowship before, but then that just flew over my head. I did not come to the consciousness of what open source internships were until I came across Gift's post. That was when my journey started, navigating through hyperlinks, I fell into the rabbit hole. The entire application procedure was new to me, submitting proposals to organizations for selection. Nevertheless, I wanted to be a part of this, because it hit multiple targets with one stone.
I get to improve my skills as a dev, receive mentorship and expand my network while getting paid a stipend!
I filtered through LinkedIn search to see if there was anyone that I could relate to that have gotten this internship. Naturally, I moved toward the few Nigerians that have gotten it. I found out that an alumnus of my school, Ndubuisi Onyenemenam had been involved in multiple OSS internships. Glad that he did not mince the truth in telling me that my chances of getting it were low because I did not have enough time to contribute to the projects before applying. He still said that I could go on and apply, then learn from the whole process. He also organized a call to give interested folks more insight about open-source internships.
I did not apply for the Google Summer of Code that year but I applied to several other OSS internships and got multiple rejections.
Note that some of my previous rejections had nothing to do with not applying the principles below. Like all things, other factors could be beyond one's control. For example:
I applied to the Google Summer Code program in 2023 for the armada project and I was not selected not because my proposal was not good or I did not do the things listed in this article but because GSOC rejected the project entirely. At least my mentors told me my proposal was good and one of them called it "excellent".
I would be sharing with you what I think would significantly improve one's choice while applying for these internships.
Mindset Shift
Initially, I thought I could just turn in an application without having any idea about what a project was about as these open-source internships were labeled mentorship opportunities for "newbies". Later on, I found out that to be successful in these internships, though, for newbies, you must not only say that you are interested in your choice project but show it as well. I present to you my playbook for landing open-source internships.
My playbook for securing open-source internships.
This is my playbook on how to land OSS internships from my experience and as you know experiences differ. Other past OSS interns could have different experiences. As a past outreachy, Linux foundation and current summer of bitcoin intern (as at the time of writing this), this is something that I have found works for me and I believe would be useful for others.
Everything here is directed to showing proof of work
Note that this is directed towards open source internships that require a proposal for application such as Summer of Bitcoin, Google Summer of Code, and LFX mentorship.
Interact with the organization's community
A lot of open-source organizations have online communities where contributors and maintainers interact with each other. This could be an email list, slack, web irc, etc. I recommend this because it gives you a feel of the organization and its activities. You can also easily direct your queries there and participate in community activities. This helps your chances because mentors would not only 'read' about your passion for the project but can also see and experience it through your participation in the community.
Solve project issues
The best way to prove your enthusiasm and capability to take on the project you are proposing is by showing that you can. I usually go for issues labeled "good first issue". These are issues that are considered good starters for new contributors. Solving these would help you have a good grasp of the project.
Bonus points if you can contribute to issues relating to your project idea as this would greatly help show your capabilities to take on the project that you are proposing.
Show that you understand the project
My go-to way of doing this is by referencing lines of code while asking questions, giving suggestions, and even writing my proposal. This would help show that I have scoured through the codebase and have adequate context for taking on the project.
Show that you understand your project idea
While writing your proposal, break down the steps that you would take to complete your project idea if accepted. Write code snippet samples, and build a prototype if you can. In general, understand the project for yourself and ensure you communicate that clearly in your proposal.
Start preparing to apply before the application window officially begins
I recommend this because it gives you time to familiarize yourself with the project. From my experience, good applicants have started contributing to their desired project before the application begins. To help with organization selection, you can take a look at the previous cohorts as most organizations that participated then are more likely to participate again. For the GSoC program, you can also start contributing when mentoring organizations are announced by Google. The time between the announcement and the start of the contributor application deadline is ample enough to start understanding the project. For the Linux Foundation internship., I suggest you subscribe to the mentoring GitHub repository so that you start contributing as soon as a project idea gets merged.
Contribute even after the application period
This is not a hard requirement but it would not hurt. If you have unfinished PRs, you can still work on them even after the application period. Remember everything is driving at showing interest and not just talking about it.
You can take a look at what the proposals for these projects look like, though it is only for GSOC, it could serve as an inspiration for other proposals. Link