Finding an Internship in the US

My views and experience about finding an internship in the United States. This post also has some useful resources which will help you find an internship.

Who is this post for?

How to get an internship in the US? When should I start applying for internships? What’s important for my resume so that I can land an interview? How do I prepare for my interview?

If you are someone who has similar questions in your mind, then I highly recommend reading the entire post as it will greatly help you to pave a path for yourself when you start the internship hunt.

I have written this post for Software Engineering internships for US-based roles. However, I believe that many bits and pieces of this post can help any student in any country. I also think that this process will be quite similar for finding jobs in the US. But at the time of writing the post, my job search hadn’t started. So I thought it is best to avoid that for now.

Who the hell am I to present my views about finding an internship?

Finding an internship is something that I have struggled with and I reached out to a lot of people for guidance. Ideal time for applying, how to prepare, how do I get past the ATS, et cetera. I ended up receiving interview invitations to multiple companies (MNCs and startups) and landed multiple internship offers. I feel that this makes me qualified enough to talk about my experiences so that someone can benefit from them in the future.

And while we are at it, it will also save me a lot of time to just forward this post instead of arranging for a call everytime a friend needs to talk about this, haha!

Jokes apart, let’s get down to business!

Felt funny. Might remove later. Image credit: [Twitter](https://twitter.com/Akthar313/status/1433093236881453060?s=20&t=63KALzyDXxMR8ijeZQIZNQ)
Felt funny. Might remove later. Image credit: Twitter

Before you start applying…

It is always a good idea to have a roadmap inside your mind about what you have to do before applying for internships. This usually revolves around building your resume, practising algorithmic programing, or doing some side project that may look good on your resume. Let’s talk about resume first.

Resume

Resume is a crucial part of any internship or job application. It defines who you are and what you bring to the table. It is very important to highlight your previous experiences and your expected graduation date on your resume. Recruiters usually look for these two things on your resume and then have a look at the rest of it. I learnt this from a couple of recruiters and this is not my personal whim. Apart from your experiences, you can mention publications and/or some projects that you have done. Projects can be academic or personal.

It does matter how you present the information on your resume. Whenever I add a new experience or project to my resume, I always remember the feedback I received from an individual about my resume - “Sound like an achiever instead of a doer.” Be a humblebrag. If possible, ask your friend, or brother/sister to review your resume for some grammatical mistakes or for the content.

As far as the ATS is concerned, that is something that I do not have detailed knowledge about. It is a black box for me as well. We usually submit a PDF copy of our resume and not every PDF parser parses the text on our resume with 100% accuracy. Take Workday or Lever for example. The content for my resume was more accurately parsed by Lever as opposed to Workday. A workaround that I came up with was to include the specific keywords as many times as I can, but only at relevant places. For example, I used React during a couple of my professional experiences. Hence, I mentioned React in the tech-stack for both the experiences and also mentioned it in the Skills section. You can do something different which may work out for you. Again, this is something that I do on the basis of my intuition and it may not be necessarily correct.

Building your profile

At least for opportunities in the US, I have realised that being good at just algorithmic programing is not enough to get interview calls. Sooner or later, you will definitely get an interview call from a company, but there will always be someone who is as good at algorithmic programing as you are, and also knows a piece of technology or has prior experience, which you don’t. You have got to stand out! It does not matter if you have a black belt or a master title on some random platform for competitve programming. Being good at basic algorithmic programming is enough. Having the ability to solve Easy or Medium level questions on LeetCode is enough. What makes a difference is that you have some software engineering experience apart from algorithmic programming.

Now how can you do that?

Learn a new technology by doing a personal project, contributing to Open Source Software (OSS), participating in Hackathons are some ways that can help you to build your overall profile. Not only will these make your profile stronger, but they will also give the interviewer more topics to ask during the interview. More the experience or number of interesting projects you have, more the chances of the interviewer asking questions about them and not just a random leetcode question.

Okay, now what?

Image credit: [Reddit](https://www.reddit.com/r/TheHobbit/comments/1ce5wt/this_was_my_moment_where_i_smiled_really_widely/)
Image credit: Reddit

To put in extremely simple terms, find as many opportunities as you can and apply as soon as you can. July-end or August first week is usually a good time to start applying for internships. For internships, the hiring usually starts from July-end and is at its peak from August to November. In general, the internships are for the 3 months during the summer. But there are many companies who offer internships during the Fall and/or Spring semester as well. The process is the same for any of them and you can perhaps try to intern at one company in the Summer and another during the Fall.

How do I find the opportunities?

The best place I went to for finding any new postings was this public repository mainitained by the Computer Science Club of University of Pittsburgh. This repository is actively updated by people all over the US and Canada. Hence, it is quite reliable. The linked repository is for internship roles during Summer 2022. They create a new repository every year. So keep an eye out on their GitHub profile. They also have a similar repository for new grad roles.

Apart from that, you can find tons of opportunities on LinkedIn, Indeed, Untapped (previously Canvas) and many others. Your university’s Handshake portal is also a good place to look for opportunities.

Network!

Networking is really important when it comes to applying for new opportunities at any point of your career. Along with applying for open positions, I would also recommend anyone to register for webinars hosted by companies as it may lead to a connection with a recruiter and can potentially land you an interview opportunity. This is how I got an offer to intern at Adobe and was also able to connect with a recruiter from Apple. You can read more about the Adobe gig in this post.

Reaching out to people before your interview will also help you with your preparation. I used cscareers.dev for reaching out to people who recently interviewed for a company with who I had an interview scheduled. The discord server of cscareers.dev was quite handy for this purpose and gave me a direction for my preparation. You can find the invite link on their official website.

I got an interview!

That’s great news! Now you have the opportunity to show the real person behind the resume. Usually, companies take up to two interviews for internships.

The interviews revolve around questions related to your previous experience or projects, LeetCode questions, and basic CS concepts such as database, operating systems, object oriented programming, etc. You may also be asked questions related to a technology stack that you have mentioned on your resume. As far as LeetCode questions are concerned, you can expect an easy or medium question in most interviews. Many interviewers will also ask behavioral questions in order to understand your thought process in some peculiar situations. To prepare for behavioral questions, quite often, I refer to Amazon’s Leadership Principles as forming my answers to these principles covers most of the behavioral questions for me.

It is also crucial to do your homework about the company. You should prepare some questions of your own so that you can ask the interviewer. Interviewers usually like it when you’re curious about the role, work culture, or the company in general. I would recommend you to diligently read the job description of the role you applied to and it would be even better if you research about what the company does as well. If you have the details about the interviewer, then looking the interviewer up on LinkedIn is also a good idea so that you can get an idea of what the interviewer works on or is interested in.

Last but the not the least, keep your calm during the interview. It’s just another conversation with a person. Panicking about it or being anxious about it can do you more harm than good. Prepare well, meditate or take deep breaths before the interview, and be the best version of yourself during the interview.

After the interview

This can be the completion of one of the rounds or completion of the final round. At the end of any interview, I usually ask the interviewer that when can I expect to hear back from the company regarding my candidacy. Avoid contacting them just one or two days after your last interview, unless you have an offer deadline from another company or some other urgent matter. If you don’t hear back after a week, then asking the recruiter by email is a good idea.

Lastly, remember that you’re in this for a long run. You may not get an offer as soon you start applying. You may not even get an offer from a company where you aced the interview. But don’t lose hope or get disheartened. Keep applying and don’t stop reaching out to people. You never know what can work out for you.

Fin.

Thank you for reading my post. Albeit superfluous, there were a hundred other things that came to my mind that I thought I should include. I felt they were too specific and I wanted to be as concise and brief as possible in this post. I hope that you have a better idea about the internship process now and you land an internship at your dream company. I would also like to thank Vivek Maskara, Purva Mhasakar, and Mohit Doshi for their suggestions.

Last but not the least, I am quite new to writing articles and I am sure my writing style needs improvement. I may have also missed an important aspect in this post. I would love to hear positive or negative feedback about the post. Feel free to reach out to me by email or on LinkedIn!

Jalansh Munshi
Jalansh Munshi
Software Engineer at Adobe | The Luminosity Lab, ASU | Ex-Full Stack Dev at Pirimid Fintech

A full-stack sofware engineer keen to gain experience in a variety of products. Hit me up if you have a new idea that we can work on!