by Code Breaker

Mistakes to avoid if you want to get your dream internship

Source: Image from the The Internship Movie

Hey guys! My name is Piyush. This is my very first article on the internet, so pardon my storytelling. This post turned out to be longer than I expected, but it’s worth the ride. I’m sharing my knowledge, experience, do’s & don’ts according to my understanding of the internship application and interview process. I’m trying to avoid general suggestions that you might have already read in other articles or blogs. This post is based off my experience in applying for software internships, but most of these suggestions can be used for other internship domains. So, let’s dive in.

A little bit about myself

I started applying for summer internships around October 2017. I was confident from the start about possible interview calls with favorable outcomes before the fall semester concludes leading to a fun-filled winter break.

But the reality was that I didn’t get a single reply for any of my applications because of the insane competition for these summer internships. A significant chunk of the available intern positions in most companies are filled by the undergrads. Also, most companies are finicky about the universities at which the students they pick are studying.

The lack of interview calls for my applications initially scared me a bit, but with a little bit of research, I found out that almost 99% of the calls would be during the spring semester. So all those who didn’t get an interview chance before Winter break, BELIEVE ME, you will get a good number of calls after your Winter break.

I got an email from Microsoft to schedule a phone interview during the finals week of the Fall semester. The interview went well, and the recruiter told me that they would get back in a week if they decide to move forward with the interview process. Not hearing back from them made me curious about their hiring period only to read that Microsoft ends the hiring process during or before my interview timeline. I did get an email from the recruiter that they were in the process to call me to their HQ office in Seattle for the final rounds of interviews, but sadly they were already over buffered. So, my big dream shattered right there.

But I was hopeful. This was Mistake #1: I missed applying to some of the good companies at the start of the Fall. This rule applies to all the companies but especially to well-known companies like Google, Microsoft, Bloomberg, and others.

Tip: Some of the big companies end their recruitment for Summer interns by November, so apply asap when their hiring process starts in August.

So, the winter break began, and I planned to prepare for coding interviews and apply for as many intern positions as possible. But days went by, and I rigorously applied, giving very little thought to honing my coding skills.

This was Mistake #2: I just prepared the basics of Data structures and algorithms and tried to do some essential problems from Leetcode which I thought might appear in an interview. I was so focused on a short-term gain that I messed up the whole interview preparation. The approach I took was wrong, and I didn’t plan out properly for long-term success.

Tip: You never prepare for coding interviews in a week or two before your interview, you have to code every day even if your schedule doesn’t align that way.

As for Mistake #3, I didn’t quickly figure out and decide my career goals and interests — BUT you should. Easier said than done, though, right?

This rule doesn’t just apply during an internship hunt but at any stage of your career path. Though I was aware of the consequences of not figuring out the relevant positions I wanted to work on for, say, at least 3–4 years down the line if not beyond. But I did pay the enormous price for it. I got calls for Machine Learning, Full stack, UI Design, Cloud and similar positions though I haven’t explicitly applied for all of them and failed to succeed in all the interview rounds for these roles. So here’s my advice:

Tip: Don’t be a Jack of all and master of none. I was one and I failed miserably.

One of the inspiring quotes which motivate and pumps me up because it hits me hard and makes me realize how true it is.

I wanted the reward and not the struggle. I wanted the result and not the process. I was in love not with the fight but only the victory. And life doesn’t work that way.
— Mark Manson

So, let’s do some analytics and break down my internship application process.

The Résumé

You might be tired of reading about this portion of the application process. If you aren’t getting any interview calls, then your résumé could be the biggest culprit. So, here is a small list of possible reasons.

  • Applying to positions which are not at all relevant to your résumé.
  • Your résumé is not ATS friendly.
  • Your résumé has minor mistakes like misspellings, improper formatting.


In my case, I applied to more than 1000 positions in various companies across the States and a few companies in Canada.

Initially, I stuck to the plan of just applying for generic Software Engineer Internship and some Full stack Developer Internships. But as I was taking CS courses like Big Data, Machine Learning, and Cloud Computing, I started to apply for roles that involved these skills. I didn’t apply to QA roles as I did have some testing experience and I wanted a change from the familiar.

I did get calls for some of these roles, and as I wasn’t very well versed, I wasn’t able to crack those interviews, which brings me to my Mistake #4:

Apply only for positions that you have substantial experience with or jobs that you are genuinely passionate about.

But failure shouldn’t stop you from doing what you want even with the odds stacked against you. Not getting an internship or a full-time job in your desired field of interest shouldn’t discourage you from working on these skills and becoming proficient. The ultimate goal of an internship is for you to explore and find the right fit.

Never stop applying despite not getting calls. The last offer that I got was for a position I missed applying for; the recruiter would have kept my resume and matched the role that was a good fit for me.

Enough talking, let’s get to the meat of this article. These are some of the companies with which I got the interviews for the internship.


Application Channels

I initially only used Linkedin jobs for my applications which ultimately redirects you to companies’ career pages. But later on, I tried Glassdoor as well when I realized that not all companies use Linkedin for posting job openings.

The biggest mistake that I did during the application process was my hesitation in asking for referrals. I assumed that I would ask for a referral later as a backup. But this backfired on me when I didn’t use references initially and then when I did, the hiring process was almost complete for the season. Mistake #5.

Never delay or hesitate in asking for a referral. Use your referrals when you know the company is hiring.

Coding Challenges — The tedious part of the Interview process

I got a lot of coding challenges from several companies as the first round. I wasn’t the best when it came to time management, and I paid the price for it. It became difficult to manage my coursework, prepare and give these interviews. I didn’t even try to attempt these coding challenges with the thought of my minimal preparation and my coding skills. I didn’t give a single coding challenge which makes me point to one of my biggest mistakes. Mistake #6:

Never assume anything. At least not for the coding challenges. Try to attempt the coding challenges even if you aren’t prepared because YOU WILL NEVER BE FULLY PREPARED OR SATISFIED WITH YOUR PREPARATION.

After realizing what all I had missed because of my negative attitude during those times, I didn’t even think twice of delaying or not giving the interview when I got an email from Google during my final exams.

Breakdown of the application process and the results

Timeline of the application process

If you remove a small outlier during March, you can only see a linear increase in the number of interviews that I got starting from October 2017 to May 2018. So, don’t lose hope if you didn’t get an offer by April because some big companies like Tesla, Intel, Adobe, Salesforce, SAP, and others generally end their hiring as late as May.

There’s a good chance that you will get interview calls after Christmas break.

The timeline of my application process (Oct — May)

Interviews count based on locations

It seems like the grass is always greener on the other side of the fence, right? And the other side usually turns out to be the Bay area in most cases (unless you explicitly apply to East Coast-specific companies which are mostly in the New York area).

The below 3D geographic image shows the distribution of the count of interviews which I got for the internship. This can help you infer that you can get an interview call from any of these locations in the States or outside irrespective of your location for Software engineering or related internship roles. Though, some companies care about the location and give preference to the candidates who are close to their office location.

Top companies usually don’t care about your location; they only focus on your technical and interpersonal skills.

Interviews based on location across US and Canada

Different Levels of Interviews

Below is the breakdown of the various stages of my interview process. There is no fixed pattern of either the number of interviews or the order of interviews. Generally, the internships consist of 2–3 rounds. I have made it to the 5th round for a few interviews (Not mentioned below as I took an average of the rounds). But overall, considering both the edge cases in my case, three rounds turned out to be an ideal max number of rounds for the internship.

Various Types and Rounds of interviews



This has to be the central focus area, or least a significant chunk of your interview preparation phase. Try to allocate 70–80% of your preparation time for practicing data structures and algorithms. The three primary and most useful resources, according to me, are LeetCode, GeeksforGeeks, and CTCI. Try to solve the critical problems from all or a combination of them.

System Design

This section was not a very important part of the internship interview process for me, but it’s good to have some knowledge and a knack for how to approach it when you come across a design question. You don’t need to spend a lot of time on this, though. Watching a few Youtube videos and get an ability to figure out what the interviewer is looking for, and you should be fine. It’s one of the most comfortable sections to prepare when compared to the rest. So, I won’t recommend missing out on this one.


If you look for internships at Big 4 like Google, Amazon, Microsoft, Facebook, they mostly have a generic Software Engineering internship and don’t focus much on your specialization skills during the interviews. But most of the other companies concentrate equally on your skill sets apart from the necessary data structures and algorithms for the intern role. So, choose a specialization like Big Data, Cloud, Full stack, Machine Learning, DevOps, Testing, etc. and focus on improving and building your expertise in that field. Then apply to only those positions in which you either aspire to work on or are confident about your skills.

Interview Tips

I’m avoiding general interview tips and jumping right to a few suggestions I think are important as I messed up a few interviews by ignoring these.

  1. I was interviewing for an ML internship at a startup, and my interview was going great. But the discussion got extended for an extra 5 minutes, and the person who booked the room for the next slot walked into the room and started a debate with me about the extended time which resulted in the interviewer losing interest and hanging up. So when you book a private room for an interview in your college, library or anywhere, always book for an extra thirty minutes.
  2. For phone interviews, try to have an excellent cellular network connection or choose an area or room where the network is at its best and always use the same for all the interviews. Do keep in mind that sometimes recruiters call without any prior notice, so it’s better to have a good connection.
  3. Don’t delay your interviews after getting the interview call unless necessary. Always schedule your interviews asap. I was a step away from getting offers at a few companies by moving to the final round of interview, but they were completed with their hiring process during the timeline of the interview.

Prepare Ahead, Move Fast and Break Interviews.


If you have come this far in the process, this is a proud moment, and you should be happy if you got what you wanted. Be positive even if you have to settle for less.

That being said: you should ALWAYS TRY to negotiate the offer.


  1. Check Glassdoor for previous pay rates and add your inflation accordingly or ask your friends who got a similar offer in a company.
  2. Some companies have fixed pay rate for all the interns, so try not be stubborn or do a hard negotiation. You might get your offer revoked.
  3. If the company is not willing to increase the pay rate, try to ask for housing, travel or food compensation because sometimes recruiters can adjust benefits without much change to the target budget.


I have always believed in the idea of setting higher expectations for any work I do, and I work hard and achieve it or at least try to get close to it. So, here goes my favorite quote.

Shoot for the moon. Even if you miss, you’ll land among the stars.
― Norman Vincent Peale

I would like to thank you for coming this far. I hope you didn’t mind my poor writing skills. I tried to focus more on my experience and help others avoid the mistakes I made.

I have been through the whole process of the internship hunting, and it was a mixed experience. I know this doesn’t end here, my journey has just started to get to my dream job. Let’s start working on it from now. If you liked this article and if you think I can be of any help, comment below.