Some tips for your 1st (or 5th) go at a Software Engineer Intern Job Search

Vincent Teng
5 min readOct 15, 2018

Hi, I’m Vincent, a CS student at the University of Toronto. I was lucky enough to receive internship offers from Lyft and Microsoft over the course of my time at University. I also used these methods to secure my full-time role in 2021 at Twitch.

Thanks for taking the time out to read this article and I hope it provides you with something useful in your upcoming job search.

**Please note that article primarily targets first-time job seekers**

1. Make sure you prepare well before searching for a job. At minimum have a strong LinkedIn profile and a resume that looks professional and is easy to read through. I strongly recommend CTCI author, Gayle L. McDowell’s resume structure. You can tweak the section order and size to better accommodate your achievements and your target company’s requirements.

2. Bolster your portfolio. You can do this a number of ways. I highly recommend looking out for Hackathons (24+ hours software development projects in Canadian and US universities) on mlh.io and/or starting a personal project that interests you. Coding competitions are good options as well.

A good and pretty straight forward project to start with is a personal site. This will allow recruiters to see what past projects you’ve done and you can update it fairly easily. For projects, make sure you have them stored in GitHub (not only does this show recruiter you’re familiar with working with Git/Source and it’s often something recruiters ask for

3. Train hard for your interviews. Make sure you’re confident in the content of your resume and how you answer behavioural questions (so for example, tell me a time where you had a teammate not pulling their weight on a project, what did you do to resolve the situation). For on-site interviews (especially white board interviews), I highly recommend Cracking the Coding Interview (you can find it on Amazon, it contains extremely useful strategies for coding interviews in a general), LeetCode, HackerRank (which are often used for coding tests, so being proficient at doing these will be very useful), CareerCup (which contains past interview questions documented by people who’ve interviewed with companies in the past).

A common question format (Google uses this) is having you code on some online document (Google Doc) or IDE (CoderPad) and have you explain your code while you write it. I recommend getting very familiar with coding on these environments if possible as part of your training to remove one more stress factor during your interview.

Formats like whiteboard and Google Doc coding might not feel intuitive at first, thus being comfortable and proficient in coding like this will give you an edge over other candidates.

The most important and best way to practice for onsite interviews is to simulate a session with your friends/peers. This means for one of you to act as the interviewer and one as the interviewee. The former will ask the latter the coding questions and they would write it out on a whiteboard/computer.

4. Meet/contact recruiters when you can. Recruiters will come to universities for info sessions, go to them whenever you can (this initiative is very attractive to recruiters). At Hackathons, recruiters may have a booth (sometimes with free stuff like t-shirts and water bottles you can have), go talk to them whenever you can. If you’re feeling shy, you will need to try your best to get over that. These guys are interested in hearing about your experience and whether you can be a strong addition to their company and whether they can help you grow as a developer; they’re as interested in you as you are in working for them.

Keep good contact with them, often recruiters can get you past the initial resume screening and get it directly to the manager for review/potential interview. Be nice to them, for some companies like Microsoft, recruiters can have a major impact on whether you’re hired or not. A cold outreach to a recruiter is also possible (messaging them on LinkedIn), but don’t just ask for a job, let them of your interest in the company and whether you could ask them more about it (please note that I have not tried this before, but it’s definitely a valid tactic).

5. Improve your tech knowledge outside of class. University will teach you the fundamentals of CS and software engineering. It’s going to be up to you to expand on that and learn the specific technologies that companies use so you can be a competitive candidate (maybe a your dream company wants you to know Unity for game dev, if your school does not teach it, it’s time to make a Unity game). This will also help you figure out what areas of software development you are most interested in and help you pick out positions that will most interest you. Learning can be done with HackerRank and LeetCode as well (especially for becoming better at solving problems via algorithm formulation and data structures). Sites like Code Academy can help you learn new languages. Hackathons are one of the best ways to learn a new framework/platform. Companies on site will often provide helpful documentation on getting started and engineers (who develop and work with the platform everyday) are often onsite to help you with any issues you might run into.

One more thing, LeetCode premium is worth-it. It’ll provide past questions asked by major companies and give you access to premium only questions that may give you and edge after practicing them.

My number one recommendation for people who have no idea where to start is definitely Cracking the Coding Interview. It contains explanations and further discussions on what I’ve mentioned in this article and goes beyond with how to handle just about every aspect of job search and interviewing as a software developer.

If your technical interview is coming up fast, I’ll definitely suggest starting some LeetCode practice (you can find the difficulty you should target searching the company up on Glassdoor or LeetCode Premium).

Thanks again for reading, good luck on your searches, if you have any questions for me, feel free to reach out on LinkedIn!

--

--