Early on during my tenure at TripAdvisor, I had the good fortune to sit in on a talk by the VP of Engineering, in which he went through a lot of the nuts and bolts of technical recruiting. He talked a bit about the interview process, how to find candidates, and the kind of candidate we should be looking for. A lot of it was an attempt to impress on us the importance of recruiting.
One of the most important ways in which my performance is judged is by how well I grow the engineering organization. So that’s also one of the most important ways in which I’ll judge your performance.
-Andy Gelfond, SVP of Engineering, TripAdvisor
Rarely does one get such straightforward direction, and I took it to heart. And so, over the past couple years, I’ve been heavily involved in TripAdvisor’s recruiting process, most particularly the college recruiting effort. We’ve gone from an ad-hoc system in which we visited a couple of universities in the fall (mostly based on alumni interest), to a well-defined, top-down process with specific goals and metrics. In this post, I’ll share some of the lessons learned, and describe how to build your very own college recruiting pipeline.
If you’re desperate to hire someone today, or if you’re only looking for senior candidates, then this post isn’t for you. Building a pipeline takes time – 2+ years per school – and you have to approach the process with a strategic, long-term mindset. The good news is that once you’ve built your pipeline, you have an advantage that’s hard to replicate.
The first question you need to answer is, which schools do you care about? There are some obvious answers here, but also some non-obvious directions to explore. There are four key characteristics you care about:
- How difficult is it to get into the school?
As I’ve written elsewhere, a candidate from a top school has already gone through an extremely difficult culling process. You know that they have some minimum amount of drive, smarts, and academic ability. Say what you will, at a bare minimum you know that every MIT student was able to get into MIT. State schools with massive student bodies can also have great candidates, but it takes much more time and effort to identify them.
- How big is the CS program?
Likewise, there are plenty of great schools that have miniscule CS programs. Bowdoin is a good school, and you can make great hires there, but even if you get interviews with every graduating CS major, you might be done by lunch.
- How good is the CS program?
Related to the previous point, some great schools just don’t have particularly good CS programs, and some state schools (Champaign-Urbana, Ann Arbor, Binghamton, the UC system) have well-known, strong programs.
- What’s the focus of the CS program?
Some CS programs are focused on theory, some on practice. Some tend to feed into management consulting or finance, others into PhD programs or startups. Some have great co-op programs, and students already have significant industry experience at graduation. Know what you’re looking for, and target schools accordingly.
Interns (and co-ops) should be a key part of your hiring pipeline, for a couple of reasons.
- An intern who had a great experience is an ambassador for your cause. This is amplified if she’s a TA, or involved in an honor society or professional organization. Doubly so if you create an incentive for her to refer her classmates.
- Hiring someone as an intern is a relatively cheap way of determining whether they’re a good fit for your company – performance- and culture-wise. Bad hires are expensive, but with interns you get to try before you buy.
- Interns who end a fun summer with a great offer in hand have less incentive to look for another job during the fall recruiting season.
When you’re just starting out at a school, it may be hard to hire juniors, as the competition can be intense – they’re more likely to already have job experience (i.e., making them more attractive to other companies), and many companies restrict themselves to rising seniors (i.e., students who will be graduating the year after the internship). Sophomores and freshmen are typically much less in demand, but can be great. After all – if they pass your technical interview, they probably coded before they got to college, and may be stronger candidates long-term. The downside is that by including underclassmen you’ll have many, many more people to interview, and typically lower yield. As you develop a track record and reputation at a school, however, the juniors will become more likely to be interested. You may also get some prior interns coming back, and, of course, their friends.
All interns whom you’d like back (either as a full-time or for a second internship) should end the summer with an offer in hand. Keep in touch with them over the next couple months – don’t let them disappear from your radar. Next time you’re on campus, invite them out to lunch or dinner. Give them a going-away present (one year, we did iPads). Give them referral bonuses for getting their friends to apply and join.
Recruiting is a sales job. You have a product, a target demographic, and you’re trying to make a sale. Building a brand – especially when you’re a smaller or less-well-known company – can be very powerful. To do this, you have to provide value for free. Tech talks can be on anything, as long as they’re interesting, you have engaging speakers, and food is involved. Food by itself is a little played out – at some point in the semester, students get so jaded that sending 20 pizzas to the computer lab at midnight the night before a big project is due isn’t even going to register. And so, tech talks. For schools that you care about, you should show up at least twice a year to talk about interesting technologies, or topics of general interest (e.g., my most popular talk is on preparing for interviews). You want students to know who you are. You want the CS event organizers and career center people to know you by first name. When there’s a recruiting panel, or an opportunity to sponsor / underwrite some activity, you want for them to call you. You want for students to recognize you at the career fair. And, of course, you want them to know what your company does, and why it’s breathtakingly cool.
It goes without saying that you should be going to your target schools’ career fairs. This is your main opportunity to get resumes. Make sure you go to the right one, though – it’s a huge waste of time, money, and effort to end up going to a general career fair, only to discover that there’s a special one for the department you care about.
Some colleges let you pay for better placement, or larger booths. Others pick locations randomly, and only offer a standard folding table. Either way, there are a couple of key things you’ll need, the day of:
At the very least, you should have a table skirt and a free-standing sign that says something interesting and geeky about your company. Don’t waste space on your sign or handouts with irrelevant or patronizing information (e.g., “free lunches!”), and don’t try to get too fancy (i.e., save the over-the-top booths for E3). Your signage should tell students who you are, what you do (briefly), and why working for you will be challenging and rewarding. If you aren’t well known, then specifying your location might be helpful.
Everyone does t-shirts, mostly because everyone loves t-shirts. Make sure you have enough in all sizes, especially women’s sizes. If you’re going to do something else, then either do something really cool and geeky, or something small and useful (e.g., pens, mints). Doing something in-between – expensive but not particularly cool – probably won’t work out (e.g., one year we raffled off RaspberryPi’s, which was something of a dud).
Always, always stand in front of the table. Standing behind the table creates a physical and psychological distance between you and the students, and should absolutely be avoided, even if it ends up creating a traffic jam at your table (which isn’t, in itself, a bad thing). Also, a lot of people will walk by without stopping – you need a quick question to ask each to try to suck them in (I ask every single person who walks by, “Computer Science?”). Don’t try to figure out who the geeks are by appearance – ask everyone as they go by. It can feel uncomfortable to try to engage with people this way (especially if you’re an introvert), but your job isn’t to be comfortable – you have a role to play, as surely as if you were an actor, customer service rep, or telemarketer. You have a product to sell – your company – and resumes are the coin of the realm. Waiting for people to come to you is a losing strategy.
Once you have your stack of resumes, you’ll need to divide them into a bunch of different piles:
- Full-time: Your highest priority candidates.
- Interns: These should be sorted from highest priority to lowest.
- Auto-rejections: It’s nice to imagine that you’ll be “fair,” and that you’ll interview every single person who sends in a resume. It’s also completely unrealistic, and counter-productive. There just isn’t enough time, and even with a robust set of culling criteria, you’re still going to spend far more time than you can possibly imagine in the interview room. You need to figure out effective (and legal) ways to separate the good resumes from the bad. I describe my own criteria here.
- Other candidates: There will always be a set of hopefuls stopping by to inquire about non-engineering positions. “Yes, I know you’re looking for engineers, but are there any opportunities for marketers?” What to do with these depends on your specific situation – if you can pass them to a different part of the org and make some non-engineering hires, so much the better.
In an ideal scenario, you’ll have an HR associate along for the ride at the career fair, and will be able to pass candidates over to her in order to schedule on-campus or phone interviews. If this isn’t possible, then you should get back to your top candidates as soon as humanly possible in order to set up the next step. Gathering resumes is great, but completely pointless if you don’t get them into interviews.
I’d like to emphasize this: you will get a stack of resumes from people who seem interested, with whom you’d like to speak, and who won’t respond to email or return your phone calls. That’s right – they’ll talk to you for 5-10 minutes, they’ll give you their resumes, they’ll be excited about the opportunity, and despite your best efforts you’ll never hear from them again. If you aren’t extraordinarily methodical, consistent, and relentless in your attempts, you will lose a large percentage of your candidates before you even get to the first interview – and these will be disproportionately from the top candidates. You may think that they’re flakes (and some of them certainly are), but for the most part they aren’t responding because they’re already getting a lot of attention, and they don’t feel the need to add one more interview to their schedules.
This doesn’t just happen before the first phone screen – candidates will disappear at every stage of the process. You have to be incredibly disciplined at following up with them, or you’ll miss out on a lot of great candidates. Hire a temp (or three) if you have to. Try calling them from your personal mobile phone (i.e., to avoid the corporate caller ID). But don’t let them slip through the cracks.
On-campus interviews are generally preferred after career fairs, as you get to interact with the candidates face-to-face, and in one day you can grind through 15-20 half hour interviews. You can usually work with the college career center to reserve one or more rooms – just do so well in advance, to make sure you don’t get shut out. Alternatively, you can do phone screens (with online whiteboards), but either way, you should have a way of reducing the number of candidates before inviting people onsite. We actually do two technical phone screens for distance candidates – it adds a bit more effort to the process, and another step at which candidates can disappear, but it’s better than flying someone across the country, only to have them bomb one in-person interview after another.
You have no way of knowing how you’re doing unless you set up a system for tracking candidates through the system. You should know where each candidate is at in the funnel, how many have been knocked out, etc. Here’s a list of events to track, per candidate:
- Resume received
- On-campus / phone interview requested / scheduled / completed (each is a separate step in the funnel)
- On-site interview requested / scheduled / completed
- You passed on the candidate
- The candidate withdrew
- Offer sent
- Offer accepted
- Offer rejected
You need to know when each event happened, who did it, and (in the case of the interviews) as much detail about the event as possible (the interview and evaluation criteria are a subject for another day). You need to understand how your conversion funnel is performing, and should be able to answer the following questions easily:
- How many candidates are at each step
- Where you’re losing candidates, and whether it’s due to them not passing an interview, or withdrawing from consideration
- Which candidates are waiting on you to do something
- Which candidates you’re waiting on
The last two items are critical, and you should be looking at and following up on them every day. It isn’t just polite, it’s extremely effective to get back to a candidate immediately after they give you a resume or have an interview. If they have to wait for a week after a phone screen, they have plenty of time to lose interest, and move through someone else’s funnel. Likewise, having sent an email or left a voice mail doesn’t mean that you’re done – if a candidate doesn’t get back to you within a day or two, you need to follow up methodically and persistently. The only candidates you can reasonably leave alone are ones who are scheduled for something in the near future.
In addition to tracking the above events, your tool should allow you to search on any candidate, and assign candidates to different hiring managers. It’s extraordinarily useful to have detailed feedback on candidates from years past – it’s helpful to know whether a candidate who’d previously applied had been a borderline pass or a “hell no!” It can also be an interesting place to look for candidates a couple years down the road. We ended up building a fairly simple Rails app to track all of this (with some python scripts for reporting), but I have to imagine that there are standard CRM tools that will do something similar.
OK, so let’s talk through the timeline. It’s March 2014, and you’ve already missed the spring career fairs. No better time than the present to start preparing for next year.
- Now: Choose which universities to target.
- Now: Schedule tech talks for April (after spring break, before they’re too close to finals). You want to seed your company’s name in the minds of interns before they leave for the summer.
- April 2014: Deliver tech talks. Your goal is to start getting your name out there – start building your brand.
- May-July 2014 (depending on the school): Schedule fall tech talks for the week before the career fairs (your goal is to drive people to your booth, and to gather more resumes, during the actual career fairs). Sign up for fall career fairs.
- August-September 2014: Reserve rooms for on-campus interviews. You don’t have to interview everyone you like, but scheduling 1-2 rooms will give you enough bandwidth to grind through a lot of candidates with minimum disruption to your schedule (it’s easier to lose one full day to interviews than pieces of 5-10 days).
- September-October 2014: Fall tech talks, career fairs, on-campus interviews.
- November-December 2014: Sign up for spring career fairs; reserve rooms for on-campus interviews; sign up for tech talks. Get in front of the students as much as possible.
- January-February 2015: “Spring” career fairs, on-campus interviews, tech talks.
- May-June 2015: New hires (including interns) begin.
- August 2015: Interns go back to school.
- September-October 2015: Fall tech talks, career fairs, on-campus interviews. By now, you should be reaping the rewards of name-brand recognition, and your first intern class.
The dark side of college recruiting
If this seems like a pretty heavy process, that’s because it is. You’ll have to interview a lot of candidates to hire a few, and that takes time. Even limiting yourself to juniors and graduating seniors will require a significant time commitment – expanding to sophomores and/or freshmen will dramatically increase the pain. And make no mistake, this will be a major time commitment that cuts across your HR and engineering organizations. You’ll need to contact the schools, order swag, schedule and attend the various events, gather the resumes, input the resumes into your tracking system, follow up on each candidate, schedule phone screens and onsite interviews, perform the interviews, input interview feedback into your tracking system, hold feedback sessions, let candidates know that they’re being rejected, generate and communicate offers, keep in touch with the candidates, help interns and new hires find housing and apply for visas, etc. etc.
You need to go into college recruiting with the mindset that it’s a major task that will take up a lot of time for all involved. There have been months where I’ve done between 20 and 25 interviews per week, and the fall recruiting season goes from mid-September through Thanksgiving. Planning and scheduling can be done by HR, but you need engineers to do the tech talks, go to career fairs, and do the interviews. Interviews can be grinding, soul-deadening affairs – engineers typically would prefer not to sit in a room and watch someone else write code, poorly. Allocate your engineering resources carefully, and watch for burnout.
With all this, you still need a compelling product (i.e., company, product, technology stack, compensation, opportunity). Even if you have an exciting position working on cutting edge technologies, a competitive offer and a great corporate culture, you’re still going to lose students to hot startups, respected goliaths, and completely random companies that have some characteristic you just can’t beat (like being in a candidate’s hometown, or being near a significant other). It’s much worse, of course, if your offer isn’t competitive, or your company is boring, or you aren’t working with interesting technologies. Keep a reasonable set of expectations, and remember that you’re playing the long game.
Go forth and multiply
And there you have it. Let me know how things go. Good luck!