by Syeda Aimen Batool

How I got a remote, paid internship with Mozilla through Outreachy

lZ7wYxlOq5iN37GxGBmYmADgyj3ULjUC5Uhp

I started learning JavaScript 10 months ago and the journey has been full of frustration, hope, and motivation. Before starting JavaScript, I thought I knew most of it — but I was wrong. There was a lot to learn, Vanilla JavaScript, Node.js, React — and then making some dummy side project to apply the knowledge. And time was short because I wanted to learn and implement everything in just 2–3 months to start a job as soon as possible.

Being jobless and not having the skills you want to work with is the worst feeling ever. And you need great willpower and motivation to keep learning and keep going, staying hopeful for the future.

I started the freeCodeCamp curriculum along with a couple of other tutorials (I’ll share more about them in another post) to learn and polish my JavaScript skills. After grasping a good amount of knowledge and making a fully functional web app in Express.js, Node.js, Handlebars and MongoDB, I got some confidence and decided to jump on the front-end and learn React.js. Then I got hold of some basic knowledge of React and made some throwable apps.

But I couldn’t focus on learning more, as I wanted to earn now. It had become hard for me to work without making money anymore. So, I actively started applying to remote JavaScript jobs. I used to apply for at least 2 jobs a day but for most of them, I was not the perfect candidate so the answers were NO.

After applying for numerous jobs I realized that most companies are not interested in hiring a junior developer remotely. They prefer to have juniors on site, while those who have some experience can work remotely.

Disheartened but motivated, I decided to fully focus on completely learning React, and went back to my freeCodeCamp curriculum. I decided to make a portfolio in addition to making myself worthy enough to get a fine remote job.

One morning when I opened my mailbox there was an e-mail from the Outreachy newsletter announcing the opening of their applications. I had signed up for this newsletter a few months back when the applications for the previous rounds were about to close and I was just starting my journey. I almost forgot about it and it popped up again after a few months right at the time I needed it. So I forgot all the jobs I applied to, stopped looking for more jobs, and fully focused, deciding to work hard to get the Outreachy Internship.

I read numerous articles by the previous alumni, noted down their suggestions, explored Outreachy, watched Youtube videos and what not. I gave myself a chance to prove myself. I couldn’t see anything else except Outreachy. I worked hard, learned about open source, stayed awake late nights, and worked on weekends to achieve my target. It was a chance to prove myself to myself.

Today, I’m sharing my journey with you to help you. To help someone who is struggling to code, who is struggling to survive in this tech world, who is dreaming of a great remote job and a dream home office desk. This article is for you, Outreachy is for you.

What is Outreachy?

Outreachy is a program that provides 3 months paid internships in Free and Open Source Software for people who are typically underrepresented in those projects. Interns are paid a $5,500 stipend and a $500 travel grant to attend any national or international event related to their project approved by their mentors. Outreachy internships are not limited to programming only. They also includes UI/UX, documentation, data science, graphic design, video documentation, and illustration.

The best thing about this internship is that it is remote and Interns can work anywhere from the world without the differences of color, nation, religion, gender or culture affecting their work.

Many dream tech companies share their projects and accept interns to mentor them and give them the opportunity to work with their best developers. Mozilla, Debian, Git, GNOME, Kubernetes, and OpenStack are a few.

Previously Outreachy was only accepting Women, Transgender, Trans-men, gender-queer and some other underrepresented people in Tech. But the good news is that from this round it is open for all now.

How I won the Outreachy internship at Mozilla

Here is the Outreachy application process and how I went through it.

1) Initial Application

After creating the account I found an initial application form. You provide some information and they decide whether an applicant is accepted or rejected for the next stage. In this form, you provide info such as your name, gender, country, city and most importantly your availability during the internship.

Outreachy requires interns to be available full time during the internship, which is 40 hours per week. I came to know that one applicant couldn’t make it to the next step because she was not available for full-time. So the first step is to filter those candidates who qualify through the criteria. I qualified for the next step which is selecting a project and starting contributions.

2) Project selection and contribution

Ahhh! This is the most important step and a bit of a tough part of the process. A wrong project choice can cause you to lose the internship or the right choice can open doors of learning and exposure for you. After clearing step one, interns now can see the list of all projects and their details.

QC3MrgFqyAA4fvRPkxBGr5zSJgqoU0r398L3
The project I was selected for

Wrong way of selecting:
Going through every single project and company, reading details, and not remembering anything and thus ending up getting all confused.

You don’t need to read and see details of every project and switch from one to another. It will burn your time and energy.

The right way:
Just shortlist the projects based on the required skills which match your skillset. Now you have a few projects in your bucket. Next, you can further shortlist based on the supporting skillsets required with the major skill. Or you can choose based on your area of interest.

In my case, I am good at JavaScript. I had many JavaScript based projects but I was interested in ReactJS to enhance my skills. It was easy for me to choose a project and stop wasting time on other projects because I was clear in my mind that I wanted to work with React.

3) Setting up the project, understanding the codebase, and starting contributions

Ladies and gentlemen, tighten your seat belt as you are going to experience a lot of different emotions at this stage of the application. You are going to feel dumb, not confident at all, fear of contribution, fear of rejection of pull request, fear of not writing quality code, fear of asking questions of the repo owner to help you set up the project, and much more.

Throw that syndrome out the window :)

This is what my mentor asked me to do in response to my fears. And I recommend you do so, too. Once you throw it out you will do well. You will win it. Fear is going to take you nowhere!

Now you have to set up the project repo, make it run on the local machine with the help of available documents, and start finding good first issues. It is helpful to start with good first issues as they get solved pretty easily and you gain a lot of confidence and motivation to continue.

Remember, Outreachy requires at least one contribution to be eligible for the final application and internship — but they highly encourage interns to keep contributing to increase chances. Now, based on my experience I warn you not to get trapped and feel accomplished with one or two contributions.

Competition is tough, people contribute more than once from around the world and increase their chances of selection. So make sure you have more than one — and really good contributions increase your chances.

I had never contributed to any project ever before, I didn’t even know what a Pull Request was and how to do it. In fact, I learned everything during the application process.

I found one issue unassigned and opened a Pull Request with a solution. My mentors were in a different time zone, so before they would wake up I had two Pull Request opened and I couldn’t sleep just waiting to see the response. I stayed up till 3 AM until I got the response on my PR. And to my surprise it was…

jaC-CCfQyk5eoaPMYHlHh4jo6NvSce2ZVNY3

and then

1BpvIojMNj47uqLOqc7-QYgONysnHpIbK6cg
Yay :-D

You can’t imagine how happy I was. I felt like flying, like Superman going up above the sky. In short, I was in 7th sky!

But I had to come down to solve more issues. This gave me great confidence and then I didn’t stop contributing. By the time of the last date of application submission, I had 6 Pull Request merged. I submitted my final application and kept contributing afterward.

Before the Outreachy results were announced, I had a total of 10 Pull Requests in my bucket which made me a stronger applicant for this project.

Results announcement

It was hard to wait for the results. I was impatiently counting days to get the news. With confidence and hope, there was nervousness too. And the news of acceptance was nothing more than a cool breeze in the weather of frustration and journey of learning. I was excited and happy and what not. A long journey of learning and making test applications got me here at Mozilla working with the finest developers on earth.

I couldn’t stop imagining learning more and become another fine developer in the next few months. And then the news of a getting a MacBook Pro from Mozilla was like a cherry on the cake. I already started disliking my HP machine. :-D

Finally, I am now going to start another journey of learning by working on a real project with mentors in one of the world’s top tech companies. My internship is starting on 4th Dec 2018. I’m excited and can’t wait to start it. I am hoping to learn and get the most out of it.

Why I found Mozilla so special

Interns at Mozilla get three more benefits other than the stipend and travel grant, which make this internship even more exciting.

  1. All Mozilla interns get the latest MacBook Pro with cool heavy specs.

My MacBook Pro is arriving in a few days with the following specs:

  • 2.9GHz 6-core 8th-generation Intel Core i9 processor, Turbo Boost up to 4.8GHz
  • 32GB 2400MHz DDR4 memory
  • Radeon Pro 560X with 4GB of GDDR5 memory + Intel UHD Graphics
  • 512GB or 1TB PCIe-based Flash Storage
  • Touch Bar

Mouthwatering? It definitely is!

2. An Invitation to Mozilla All Hands, which is an event where all the company’s employees are invited to meet their colleagues in person and share experiences and interact with other people they may not normally meet in person. Interns get a chance to meet other employees, volunteers and more specifically their mentors of the project.

3. All Mozilla interns get LDA credentials which mean they will have an official Mozilla e-mail id — username@mozilla.org.

Nuggets of wisdom to win Outreachy

Based on my experience and observations, here are the things which led me to win this opportunity that I suggest you do:

  • Leave every fear, insecurity or moment of low confidence behind and jump into it. Apply for Outreachy, contribute, learn, ask questions, try to solve the issue. It is okay if you don’t get it correct at first attempt — you will get feedback and you can make it in the 2nd or 3rd or 4th attempt. In the end, learning matters — not the number of times you made mistakes.
  • Don’t feel too accomplished or overconfident after making one or two contributions. Try to solve as many issues as you can. Keep contributing even after the deadline until you get the results.
    This helped me a lot. It made my mentors realized that I’m a learner, enthusiast, and an active participant and they always appreciated it. So I recommend you to keep contributing.
  • Don’t be afraid of asking questions even if they are stupid. For one issue I asked too many questions from my mentor, but he was kind enough to answer them all.
    Still, make sure you are asking after some personal research. Don’t throw any random questions out there. Ask if anything is not clear to you. Ask. Ask. Ask.
  • Keep an eye on your competitors. I used to visit the project repo daily to check how many new applicants were trying to solve the issues. How many PRs were opened and who would be my biggest competitors.
    My heart used to beat really hard whenever a new applicant popped up which helped me not to stop.
  • Start as early as possible. Sign up for the newsletter. If you start early you will have a lot of unassigned easy bugs which you can solve. You will have a good chance to understand the project and solve the most issues.
    The application process is long and time consuming, and you can’t make it in one or two weeks.
  • Engage with the project mentor. Don’t let them forget you.
    Contribute, solve bugs, and ask (valid) questions.
  • Most Important: I already knew that Mozilla offered a Laptop and All Hands meeting invitation, but I didn’t apply to the Mozilla project for these two things. I applied because among all listed projects, there were only a few projects that required JavaScript and React — and only 2 projects I could understand a little bit. And one of them was from Mozilla.
    Your primary purpose should be winning the internship with any organization, gaining knowledge, learning and making your way towards a better future. Don’t select one company because of a few perks. You will end up losing a good project and banging your head against some other project that’s not of your type. Select a project if you really feel that you can do well there.
  • Focus on one project and give your best to it. In case your project doesn’t have more issues, ask your mentors to refer you to some other project. This happened in my case.
  • Forget about the outcome. It’s okay if you don’t win the internship, you will learn a lot. You will get some mentors and a start to the opensource journey. At a point, I decided to keep contributing to the project even if I didn’t win the internship.
    Because the amount of knowledge I gained during the process was significant compared to what I gained working on demo projects over the past few months.

Hah! I have a lot to say. I should keep other things for the next article. I’m excited to start my internship at Mozilla. And I highly encourage struggling newbies to apply for Outreachy. You don’t need to be a great developer — you just need to be a great learner.

These internships are here to teach you to increase your knowledge. If I can get it you can definitely get it. Anyone who is motivated and willing to learn and work hard can get it. Next round of Outreachy is starting in Feb 2019. Don’t miss it!

A Big Thanks

In the end, a big shout out to Outreachy organizers Sage Sharp, Marina, Elizabeth Noonan at Mozilla and everyone who supports Outreachy helping newbies to learn and excel in open source. Lastly, a big big big thanks to my husband for telling me about Outreachy, sending me the link, and motivating me to apply and work hard. This wouldn’t be possible without his moral support.

It would be totally unjust if I don’t mention the support and motivation given by my mentors Armen Zambrano and Dustin Mitchell. I feel blessed to have supportive mentors who celebrated little achievements. Needless to say, their unwavering support was always there to sort out all kinds of issues I faced. Thanks a bunch for being so kind and helpful.

Ahh! I can’t wait to start!

Motivated?

If you are planning to apply for next round and not feeling confident or feeling lost in the application process, feel free to get in touch. I would be happy to help you. I want Outreachy to reach out to everyone struggling for a good career start.

Remember

“People are capable, at any time in their lives, of doing what they dream of.” -Alchemist

My code is @aimenbatool and I tweet @aimenbatool. Contact me if you need help.