Recently, my juniors have been asking me for advice about tech internships. As I'm finishing up my third one this summer at Yammer, I thought to share my experiences in this series of posts.
But first, why?
If you're a college student and want to go into tech, an internship is the best thing you can do for your career. Employers use internships as a trial period and training session. By working hard and smart in twelve weeks of summer, you can prove your ability to get things done, and parlay that into a fulltime offer. If you dream about working at, say, Google, working an internship there is a fantastic way to make that a reality.
Even if you don't want to commit to a particular company yet, the first thing any recruiter will look at is your past work history. Hands on experience working directly in the industry easily beats a vacation abroad or yet another class.
Not sure whether your calling is back-end, mobile, or analytics? Don't even know if CS is right for you? Then an internship can serve as a testing ground, giving you first-person experience of what the day to day work in the industry is like (very different from any class you've ever taken.)
Tech interns are also paid very, very handsomely. These internships aren't the ones you see in Dilbert where the primary function of the intern is to fetch coffee. Tech interns work on real products, deliver real value, and accordingly are paid real salaries. Their monthly wages are comparable to those of full-time professionals in other fields. This tweet accurately represents the experiences of me and my friends circa 2014 -- and the offers keep rising every year. Want to graduate debt-free? Internships will help get you there.
Friend made a list of top internship offers 💰 pic.twitter.com/faEonGfjwd— Tiffany Zhong (@tzhongg) November 23, 2014
Finally, internships are just fun. Because companies are all vying to win the hearts of the next round of tech talent, interns are treated better than anyone else. Besides the catered food, WiFi-enabled buses, and other perks that are available to all employees, tech companies will also organize special intern-only events. Microsoft flies its interns to Seattle for a week; LinkedIn buses its team to Disneyland. And large tech companies have offices everywhere, so you can take the opportunity to spend the entire summer exploring places like New York and Washington.
So you want to be an intern...
Before you apply, pause to consider what kind of person a company would want to hire. Think about the situation from their point of view: they have dozens, if not hundreds, of applicants to filter through. Diligently studying and getting good grades in college are good, but if you really want to maximize your chances, you should demonstrate motivation and competence in CS outside of the classroom.
Somewhat ironically, the best way to signal this is past work experience. But I don't have any, that's why I'm looking for an internship in the first place. Don't worry, there are other things you can do in the meantime. I recommend working on a side project. Pick something simple, some problem you can fix, some app you can build that addresses a problem that you or someone you know encounters. It might be a level editor for a game you play, a website that calculates final grades, a Bitcoin trading bot. After you get something working, patch up the bugs, ask your friends for feedback (and to pitch in!), and continue to iterate on it until you have something you're proud of.
Another way to show a passion for CS is by competing in hackathons. For those not in the know, hackathons are usually 12 to 48-hour coding marathons, wherein teams of students create something from scratch, and present them at the end for glory (and sometimes prizes). Companies will sponsor the venue, food, and Red Bull; all you need to do is show up with your laptop (and preferably some friends). It's a great time to pick up a new technology or knock out an idea that's been on your mind.
Whatever you end up making, be prepared to pitch it to your recruiters and interviewers. The most technically sophisticated project won't help you if you can't adequately describe what you did. Make sure you can speak competently about your work, who it helps, the challenges you faced and insights you gained.
Your resume often forms the first point of contact between you and a company, so it would behoove you to spend some time optimizing it. Some things to keep in mind:
- Recruiters will spend about 6 seconds1 before making an initial decision, so make sure your resume is easily scannable and highlights what you want to show off.
- What should you show off? In order of importance: work history, projects, skills, education. Of course, if you excel in particular at one of these, emphasize it as appropriate.
- As much as possible, your resume should be CS-specific. If the page is mostly filled with your hospital volunteer work and rock climbing hobbies, I might wonder if you're trying to hide a lack of technical experience. That's not to say that you shouldn't personalize your resume, but make sure it depicts a strong tech background.
- If you're even thinking about graduating early, mark it on your resume. Companies by far prefer juniors because they most easily convert into full-time hires. If you're a sophomore and considering graduating in 3 years, then indicating so will grant you the same benefits. You can always change your mind later.
Of course, all the usual advice also applies (one page, professional email, ask for feedback, put your best foot forward, etc.)
Foot in the door
Now that you're ready to apply, how do you land that first interview? CS types usually try to do this by applying online, on a company website or job board. This isn't a bad starting point for getting your resume into their system. However, in my experience, it results in the lowest rate and quality of responses.
Slightly better is applying at career fairs. At these events, dozens of tech companies show up, soliciting full-timers and interns. It's really easy to get a few minutes to talk to the recruiters and engineers for any company you might be interested in. Conversely, though, the same recruiters and engineers will be meeting hundreds of other students all competing for the same positions, and it's difficult to make a lasting impression in these crowded, hectic environments.
I've found that company-sponsored events provide some of the best ways to introduce yourself. Tech talks, info sessions, puzzle hunts and hackathons at colleges are bankrolled by tech firms for the express purpose of recruiting talent. Just by participating in one of these, you show interest in the company that is putting on the event. Stay around and talk to the employees afterwards, resume in hand; few other students think to do so. Even better, ask for their contact info and follow up with a thank-you email.
One last method of getting in is through referrals from family and friends. If you have these connections, by all means tap them; don't get hung up on some ideal of meritocracy or insist on proving yourself solo. The interviews will provide ample opportunity to demonstrate your skills.
To be continued in Part 2: The Interview.