There’s no doubt that an internship is a shortcut to students’ future employment. Students with paid or unpaid internships on their resume have a much better chance at landing a full-time position upon graduation. Many new grads also get their full-time job offers directly through their internship.
Over the past several years, I’ve seen a lot of students struggling to find an internship due to lack of prior experience. Some may even spend a lot of time pursuing internships that don’t really matter for them in the long run.
In this post, I give 5 very practical tips to help students secure a software engineering internship.
Tip #1 – Start early
It’s common to have internships during summer vacation. However, the majority of students don’t start their preparation until March. Not only will these students have less time to prepare for interviews, but they will also have to deal with the stressful conflict of final exams.
So, when is an ideal time to start searching for internships?
I would normally recommend students start one semester in advance. This might sound too early. But, take a look at the advantages:
- Companies usually hire summer interns during September and March every year, so you’ll have an extra opportunity if you don’t make it on September.
- Starting early means you will have more time to prepare and get more experience during your second internship.
- If you are not a freshman or sophomore, you must have finished most of the basic computer science courses that are required in technical interviews. So, you definitely don’t need to worry about having interviews too early in your educational career.
- Companies like Google/Facebook will have a team-matching process after you pass their interviews. Starting early will make the whole process easier, because there are fewer interns competing with you.
Tip #2 – Ask for referrals
A lot of students complain that they didn’t even get the chance to interview. Usually, students submit their resumes online and wait forever.
The golden rule is: always ask for referrals, which is way more effective than most other approaches. Normally, when someone refers you through the company’s referral program, your information will be quickly reviewed by HR. Not only will you get a reply very soon, but you are also more likely to get interview opportunities.
Try to go over your connections from Linkedin/Facebook/Twitter/G+ and ask friends who are working on your target companies to give you a referral. Also, don’t be too shy to ask people if they have any connections who can refer you. As a student, you should definitely take advantage of your alumni networks.
Tip #3 – Prepare well for career fair
Another very effective approach is attending career fairs. As a student, your school will normally hold two career fairs each year. You definitely should attend both unless you’ve already landed your internship.
The tip here is not just showing up. The most important thing you can do is spend extra time and effort preparing for career fairs.
When I write “prepare well,” it’s absolutely more than having a well-formatted resume. You should spend enough time refining and preparing your elevator pitch. Having different elevator pitch versions for different companies is also highly recommended. Make a list of companies you want to talk with in advance and do your research about them. You won’t be able to impress the recruiter if you know almost nothing about the company, and you should definitely prepare some good questions for each organization.
It’s also likely that some recruiters will ask you a simple coding question. Spend some time preparing coding questions in advance.
Tip #4 – Be very familiar with basic knowledge
For software engineering internship interviews, you will be expected to have general coding questions down. Before working on those questions immediately, I highly recommend people spend enough time on basic data structures and algorithms. They really are the foundation of all coding interviews.
Always review your textbook about basic knowledge. You should have a very clear understanding of those data structures/algorithms, their pros and cons, and when to use each of them. Big-O analysis is also extremely important.
Remember that, for internships, no one expects you to have any working experience. As a result, interviews will mostly focus on evaluating if you, as a candidate, have a solid foundation–which makes the preparation process much more specific.
Tip #5 – Keep practicing
You should spend a lot of time preparing for coding questions. You won’t be able to get familiar with them without enough practice.
Websites like and have coding questions you can prepare with. Some of them are questions from past interviews, which means you may be able to practice with questions from your target companies. You can also check out , where you can experience mock interviews from experienced interviewers from Google, Amazon and other top companies and get real feedbacks to improve.
As a student, you have a lot of advantages to land your internship. Preparation is the most important part of successful internship hunting. Start early, even if it feels like overkill.
About the author
is an online based online platform that allows people to have mock interviews with experienced interviewers from Google, Microsoft, Amazon etc. and get real feedback to improve.