MLH Fellowship Experience — Part 1
(From applying to becoming an MLH fellow)
What is MLH?
Major League Hacking (MLH) is the official student hackathon league. Founded in 2013, it’s a global community for student developers. As per the official website (that says about MLH) :
Each year, we power over 200 weekend-long invention competitions that inspire innovation, cultivate communities and teach computer science skills to more than 65,000 students around the world.
As is obvious from the statistics, it’s a massive organization that provides a great platform for the next generation of technology leaders and entrepreneurs.
Bonus: All events and hackathons for the season 2021 can be found here.
Let’s look at our next milestone the MLH Fellowship.
What is MLH Fellowship?
The MLH Fellowship is a 12-week internship alternative for aspiring software engineers. The main reason why this program was launched was to compensate for the damage caused by COVID-19. Thousands of students worldwide (including me) lost their jobs and internships, and MLH came up with a unique but effective way to handle the situation. It served as a bridge between companies and students and gave students a hands-on experience of working on real-life projects while allowing the companies to get their work done.
To know more about MLH Fellowship, their programs, and all other details, kindly visit their website. I’m pretty sure spending a few minutes over there will give you fair enough idea about everything, so I don’t need to cover it in the blog.
Let’s focus on the process of application, my interview experience, and some dos and don’ts.
Even before we proceed to the next section, I’d like to give an obvious disclaimer. All information I have shared is based on personal opinion. The same might or might not be effective in your case.
Applying for MLH fellowship (First Step)
To become an MLH fellow you obviously need to apply for the same. The first step is to fill a 30 to 45-minute long application that will encompass a wide range of fields from basic eligibility tests to previous coding experience and tech-stacks you’re familiar with. Additionally, MLH fellowship has 3 different programs (currently), so make sure you explore and understand each one well, and make a decision. They have batches, so decide which time would be perfect for you.
I had initially applied for the first batch of MLH back in summer, but I had applied really late. That’s because I was vigorously preparing for the internship season at IITG, and I was not really able to explore the MLH program completely. I only received an email later on that their batch was full, and I could apply later. After getting an intern offer from Oracle, I was more enthusiastic to apply for MLH, because I had the time and interest. This time I got an invitation again and also my application was fast-tracked because I had applied earlier. Having gone through the 2 programs (the third one got added only a couple of days ago), I decided that the Explorer program was best suited for me. I applied on the 18th of August for the first batch of Fall 2020 (September 21 — December 14) and waited for a response from their side.
Do’s and Don’ts
- Needless to say, be honest while filling the application. Messing up things with some additional projects that you have not done or a tech-stack you’re not familiar with might cause issues later on.
- Fill minute details very carefully. These include stuff like the program you’re choosing, the timings you’re comfortable with, and also the commitment (part or full time).
- Very wisely and carefully choose the project and sample code for the project you’re willing to talk about, once you get into the technical round. This is because the application once submitted won’t receive any changes due to the overwhelmingly large number of candidates.
- Take time to fill the application. The application will have a variety of questions, but filling it properly and patiently will increase your chances of getting shortlisted.
- Maintain a proper LinkedIn profile (yes it always helps), if possible maintain a basic portfolio and a decent GitHub profile (by this I mean you should have a good experience in development). Also after filling in the application completely save a PDF of it, which will help you later.
Your First Interview
The next step is your first interview. Applications are reviewed and then shortlisted for interview. The first interview is supposed to be a non-coding type, that is it’d mostly involve the following things — eligibility, passion, communication skills, A/V setup, professionalism. It’s similar to an HR round where the main focus is assessing your interest in work and ability to do the same.
I got an email stating that my application was undergoing review on Aug 30. And on Sept 1, I received another saying that I was all set to appear for my first interview. I set up an interview on Sept 3. I had a really awesome experience. My interviewer Anuhya made me feel a lot comfortable and the entire session was quite pleasant. Initially, her accent was a little hard to understand, but soon I made peace with it. I discussed about a lot of things from the projects I had done, to revoked intern at Oracle. She even shared her issues due to COVID and answered a couple of questions I had regarding the program.
Do’s and Don’ts
- Anyone who has previous experience with an HR round shouldn't face a lot of issues here. Be frank, confident, and friendly.
- Since your interviewer would be known to you before-hand do learn a little bit about him/her to facilitate the conversation. Also, keep answers ready for some basic questions like, tell me about yourself, or explain the so and so... project on your CV. This would not only save time but also ensure good communication.
- There might be unavoidable issues at times (check out my technical interview experience), and it’s your part to remain calm and composed.
Your Technical Interview
The final step is the technical interview. MLH Fellowship application says,
At Major League Hacking we don’t believe in white boarding interviews. Instead we prefer to talk about the code you’ve written. As part of your application you should submit a code sample that you feel demonstrates your abilities. We’ll review this sample ourselves while looking over your application. If you’re invited a tech interview, you’ll talk about this specific code with your interviewer.
As is clear, you have to explain the project (or code sample) you had submitted while filling the application with all the technical details. The interviewer might stop you and ask you questions to assess your understanding. He might also ask you questions about the language used or any other tech-stack in general (which you had mentioned in the application). Apart from technical knowledge, you definitely need to be communicative and professional.
I was really nervous about this one because I wasn’t sure if I’d be shortlisted for it in the first place. Though I had a good feeling about the first interview, still everything was quite uncertain. To my surprise on Sept 7, I got an email asking me to schedule my Technical interview. After being hesitant as to the date, I finally decided to schedule it on Sept 11.
On the d-day, I just made a quick revision of some of the possible things he might ask about other languages and frameworks I had mentioned on my application (that’s when your saved PDF comes to use). I was quite confident about the project I had submitted because I was working on it very recently and it was quite well settled in my memory. Without going into any details, it was a Flutter based app for a client. I had used Android Studio, as my IDE and I used the emulator for a live demo.
My interviewer Chris was quite professional and his accent was easy to follow. However, when I decided to begin my explanation with a quick demo, the emulator stopped working. After 20/30s of waiting in vain, I asked him if I could explain the code and come to the demo later on. He was impressed with the clear and detailed explanation, and also the well-structured manner of the project. After that, I showed him the demo and answered a few questions of his regarding dart in general. There was an evident factor of time mismanagement on my part, because of the emulator issue, but somehow I think he didn’t mind.
Do’s and Don’ts
- First and foremost pick a project which you’re confident with. Since MLH gives you a lot of freedom, put it to use in your favor.
- Secondly, prepare a little bit beforehand. If possible get your friend for a mock interview. It’ll help you boost confidence.
- I think in my case, I made a wise decision to use the emulator and show the code because that made me clearly explain different segments of my code. If possible present the code to a website or an app, that you can show to them in a deployed state.
I finished my Technical Interview slightly upset, because of an unavoidable issue with my emulator. On the early morning of Sept 13 (12:06 am), I received an email that left me stunned — “Congratulations, you’re going to be an MLH Fellow…” I was really elated.
Finally, I’d like to thank all my interviewers again, and to the whole MLH Fellowship team for this awesome initiative. I hope to learn a lot during the coming 12 weeks and have a lot of fun. After the 12 weeks are done, I’d love to publish part 2 of this blog, regarding the complete experience. Congratulations to all the other fellows who are reading this, and best wishes to everyone else.
As always Happy Hacking !!!