This book is for informational purposes only. Except when an external source is cited, everything in the book is the author’s opinion. The author makes no guarantee about the correctness or accuracy of any content in this book. Furthermore, you may disagree with and/or find certain content offensive.

Read at your own risk. Do not continue reading if you do not accept full responsibility for all actions you take as a result of reading this book. The author is not liable for any damages including, but not limited to, academic failures, career path mistakes, financial loss, feeling upset, and physical/mental injury.

Chapter 14
Internships

Internships are an opportunity for you to convince an employer to hire you full-time. As an intern, you work for a few months on a technical project at a company. At the end of the internship, your employer decides whether or not to give you a full-time offer based on your internship performance. Furthermore, when you apply for positions at other companies, recruiters gauge your technical ability based on the pedigree of your past internships.

In addition to academics, your internship experience plays an important role in obtaining a full-time software engineering job after college. Lack of prior work experience is a serious impediment when you are looking for a full-time software job. Recruiters view lack of internships as a red flag: even if you are a straight-A student, they will wonder why you weren’t able to get hired. On the other hand, interning at multiple high-pedigree companies validates your abilities even if you aren’t a star student; in a software job market with not enough qualified candidates for all the job openings, recruiters will swarm you with job interview opportunities. It is important to have a track record of strong internship performance to set yourself up for the best possible full-time position.

Internship Track Record

Let’s start by analyzing internship track records from a recruiter’s perspective. Here are three examples:

Jill. Summer classes freshman year. Summer classes sophomore year. Local startup junior year.

Kathy. Research with professor freshman year. Local medium-sized data analytics company sophomore year. Facebook junior year.

Lily. Facebook University freshman year. Google sophomore year. Airbnb junior year.

A recruiter reviewing these three students’ internships would conclude that Jill is the weakest of the three candidates. Barring any extenuating circumstances, Jill didn’t have the motivation to keep applying for internships and/or the ability to pass technical interviews. The junior year internship isn’t particularly exciting either because local companies recruit actively and have special relationships with Jill’s university. Jill’s internship track record appears weak when applying for full-time jobs.

Kathy is stronger than Jill and has a standard internship trajectory, starting with a research position and building her way up to a coveted internship at Facebook. Many people at top-tier software firms follow this trajectory because they didn’t develop the appropriate network early on to get noticed by top software companies. Kathy’s track record is solid.

Lily has the strongest internship trajectory because she interns at different top-tier software firms all three summers. A select minority of people have the luxury and ability to hop from one top-tier software firm to another for internships, especially starting freshman year. They tap into their networks to get noticed by recruiters and develop the technical ability to pass the technical interviews. Lily has an exemplary internship record.

Leverage

When applying for full-time jobs, your internship track record is a major indicator of your application strength. The strength of your application determines how much leverage you have. If you come across as a highly-desirable candidate, you have more power than someone who comes across as undesirable or average.

Jill has only one internship at a local startup and doesn’t have much leverage. Her startup might provide an average return offer, but that’s it. Jill might be strong technically, but recruiters from other companies would ask themselves why they need to take a risk with unproven talent. When Jill applies for full-time jobs, she doesn’t have an internship track record to boost her application strength. Many students who don’t approach the internship search correctly end up in Jill’s situation; you get a decent software job that pays well compared to other disciplines, but you leave a ton on the table.

Kathy has one internship at an established data-analytics company and one internship at Facebook. A full-time offer from the local data-analytics company will pale in comparison to what Facebook can offer, so Kathy’s upside comes from applying to additional prestigious software firms that can compete with Facebook’s recruiting. When Kathy applies to other companies, the Facebook brand on her resume already signals that she is a strong candidate and recruiters are likely to interview her. If she gets a better offer from another firm but still wants to work at Facebook, then she can ask Facebook to match it. If she doesn’t want to work at Facebook and gets a worse offer at another firm, she can ask the other firm to match her Facebook offer. Having just one internship and return offer at a “big name” company provides the leverage to improve your full-time opportunities.

Lily has three internships at top-tier companies and she will be highly sought after. Provided that she did an excellent job during her internships, she will have an easier time getting full-time offers at Google and Airbnb than Kathy. Even if Lily and Kathy were of identical technical capability, both Google and Airbnb would prefer Lily because her 3-month internship experience is much easier to gauge than Kathy’s single day of technical interviews. Due to having already interned at top-tier firms, Lily has a higher chance than Kathy of getting multiple full-time offers that she can leverage against each other to boost her final outcome.

Lily’s internship track record is close to ideal and most recruiters prefer Lily over Kathy; nevertheless, just having one “big name” on your resume is sufficient. There are a limited number of people like Lily out there and Kathy’s Facebook experience provides a sufficient foundation to do just as well in full-time employment. Your goal should be to get the best internship experiences possible, as good as Kathy’s track record, but ideally as strong as Lily’s.

Building Your Internship Track Record

Lily is able to get top-tier internship opportunities early on via her network. Many qualified people miss out on internships at top-tier tech firms because they don’t get noticed in the application process. In addition to picking up strong technical skills, you must use your network, whether it be talking to the recruiter at a career fair, joining a student organization with lots of connections, or befriending someone who can submit your application for a referral. Aim to build a network as best as you can and try to achieve Lily’s internship sequence; if things outside your control don’t work out, it’s fine to fall back to Kathy’s internship sequence.

Research

When other people edge you out from the most-competitive internships, fall back to less-competitive work opportunities. The first type of opportunity is the research position. Getting an undergraduate research position involves contacting professors and asking them to interview you and take you on as a research assistant. The hiring bar is low and some universities also have summer research opportunities specifically for computer science students who did not get an internship.

If hired, you work for a professor for academic credit or a modest wage. Professors are extremely smart people and you will learn plenty from working with them. The drawback is most recruiters won’t give as much weight to undergraduate research as to an actual internship. Plus, you miss exposure to industry-style engineering with hundreds or thousands of people working on a single codebase. At the end of the day, although research lacks the glamor and industry-relevance in an internship, some experience is still better than no experience. Research is a good place to start out when you have no prior work experience.

Middle-of-the-Road Companies

In addition to summer research, the other less-competitive work opportunities are at middle-of-the-road companies. These companies are one step up from summer research because you’ll be working on software in a corporate environment. They include run-of-the-mill tech firms and non-tech firms that have software needs. These places aren’t as hot as the prestigious big tech firms and often don’t have structured internship programs. To get an internship at a mundane firm, you still have to get noticed by a recruiter and go through interviews, but the application process will not be as difficult or competitive as the process at top-tier firms.

As an intern, you’ll receive mentorship from an experienced engineer and work on projects that they’ll use. You’ll also be paid for your work and can expect at least $20/hour. An internship at a mundane company is an excellent way to build up engineering experience and work your way towards a top-tier company.

Note: do not work for free unless you have no other options. In the software industry, companies offering unpaid internships don’t invest in their interns and they might even be scams. You may end up wasting your time and not getting mentorship or experience.

Top-Tier Companies

Finally, top-tier companies are the most-prestigious firms; their internship programs are superb, but have highly-competitive application processes. Examples of top-tier firms include Apple, Facebook, and Google. The hardest part of the application process is getting noticed. Applying online rarely works and you usually need a  referral from someone internal. Once you get into the company’s interview pipeline, the rest of the process is standard. The interview questions are challenging, but often reduce to cookie-cutter problems. If you’ve paid attention in class and prepared correctly, you have a good shot at passing and getting hired.

As an intern at a top-tier company, you gain exposure to quality software engineering processes and robust code. You learn what it’s like working in some of the largest codebases. In addition to learning a lot, you’ll grow your network from being around some of the strongest full-time engineers and interns in the industry. If you perform well during your internship and receive an offer to return full-time, it will be spectacular compared to what other industries and non-prestigious software firms offer. Top-tier companies are the best places you can intern for learning and growing your skills and the best places to get full-time return offers for maximum leverage.

The Big Picture of Internships

Academics in college give you the tools to succeed in a job. Internships are as important as academics because they set you up for the best-possible full-time job. Internships are a way for you to build your brand and tell recruiters, “these other companies hired me and so should you!” The better your brand, the more leverage you have over companies that want to hire you.

At the beginning, start with modest work experiences such as summer research or internships at low-tier and mid-tier companies. Once you grow your professional network and hone your technical skills, you will get noticed and pass internship interviews at top-tier companies. Completing successful internships at top-tier companies gets you the recognition and leverage that will maximize your full-time offers in your final year of college.