John Knox, Austin’s finest, wearer of Google Glass and generous supporter of BoS student grants, recently sent us this short essay on recruiting which made us laugh so much we had to share
Lets talk about recruiting senior developers.
34,295. That’s how many students applied to Harvard this year. Applying isn’t easy. Studying. Boring standardized tests. Writing essays. Working on homework. Begging for recommendation letters.
Of those 34,295 students, 2,023 students were accepted. Each of those expect to pay more than $62,250 a year.
When these students graduate, theyâll have a similar process to get a job. Begging for recommendation letters. Writing application letters. Padding resumes. Waiting in job fair lines. And attending interviews. You canât stay in university forever, so the graduates put up with one last application process.
But what about recruiting folks who already have jobs? They aren’t getting kicked out of a dorm room. They’re not offering to pay you a quarter of a million dollars to work there. And there is a lot of demand for a limited supply of experienced developers and engineers.
Here is the typical recruiting process I’ve seen.
A recruiter sends you a LinkedIn message. It claims that you look like a good fit for an opening. You have to call during work hours, so you hide in the broom closet for 30 minutes. The recruiter tells you how exciting the opportunity is because they have free candy, health insurance, and a 401k.
If that goes well, the hiring manager wants to talk, again during work hours.
The hiring manager wants to know why youâre leaving your job. So you explain that you’re calling him from a broom closet because you’re quite happy with your job. You politely remind him or her that theyâre the ones who seem to want you to quit your job.
So the hiring manager explains to you that they have health insurance and a 401k. And free candy. And they have the best team they ever worked with. Everyone has the best team, by the way. Itâs one of the universeâs mysteries â like the Higgs Boson.
And then the hiring manager decides that you should take the coding challenge. And so you have to write some code that sorts things in big O of log N time, or whatever, even though you havenât ever needed or wanted to write a sort algorithm to make a living. But you do it anyhow, even though you canât quite remember your motivation. In the job you already have, you’re allowed to use the library sort methods.
If that goes well, you get set up on a phone call with a software developer. And youâre asked to write a binary search tree in your favorite language. So you’re sitting in a broom closet typing code into Google Docs, talking on the phone. The interviewing developer isnât happy either, because he or she isn’t really interested in your twenty-minute binary search tree implementation full of typos.
And the developer asks why youâre leaving your current job. You explain that you havenât decided to leave your job yet, and that just a few days ago the hiring manager was trying to bribe you to join the team by offering a 401k. And health insurance. And candy.
In the last five minutes, the interviewer allows you to ask questions, so you politely ask about the quality of the team, and if itâs fun to work there. The developer interviewer assures you that the entire team is nothing but geniuses. They all compulsively scribble sort algorithms on the restroom walls. Theyâre also a lot of fun.
If you pass that level, the company wants you to visit in person during work hours. And you meet five to ten people who might range in attitude from friendly to borderline hostile. Sometimes youâll get to write more sort algorithms on the whiteboard, sometimes, youâll just have a Q&A, sometimes youâll just have to sit and listen to someone talk about how smart everyone on the team is.
Finally, a week or two later, youâll hear back from the recruiter. If you did well, theyâll make you an offer that may or may not be less valuable than your current salary.
This typical recruiting process started with an appeal to join the company, followed by a long slow rejection process. If you examine many job listings, youâll find this philosophy explicitly outlined: 31 lines of candidate qualifications, and two lines explaining the appeal of the company.
Except for the beginning and end, itâs a process that mimics the university recruiting process. Companies use it because itâs familiar, not because itâs effective.
Fortunately, you can do better. Here are some ideas for making your recruiting process a more attractive experience.
First, be careful who does your recruiting. Make sure that you would enjoy interacting with your recruiter. If you don’t respect the recruiter, why would the candidates?
If you hire a third party recruiter, make sure that theyâre going to represent you well. For instance, I’ve seen many outside recruiters who conceal the company name when first contacting recruits. Iâm much less inclined to respond to a recruiter who keeps the company name secret. I assume that either the hiring company has a poor reputation, or that the recruiter intends to shop the candidate to multiple companies. Eventually the recruiter will monetize the candidate.
Make sure your recruiter does research on candidates before contacting them. I get LinkedIn messages from folks offering me junior positions or positions that donât match my recent experience. Those are simple mistakes. Some mistakes are more subtle, like assuming that the words Java, Ruby, or Objective-C will magically attract a candidate. You let employees program in Ruby? Nice, but hardly newsworthy.
Unless youâre intentionally operating a recruiting factory, why not spend a little time researching each candidate. Why not point out how their interests or experience makes them a good fit? Why not compliment the projects theyâve worked on? When a recruiter demonstrates that they might actually know what I’m a good fit for, Iâm more inclined to respond. If a recruiter can match my interests to a position, Iâm intrigued.
Ensure your recruiting team is organized. Even Harvard manages to send out rejection letters to every candidate. If your recruiters or hiring managers donât return messages or donât keep commitments, your company looks like they donât care about their employees.
Be efficient. Lower your barriers to entry. Use a candidateâs work time sparingly. Do what you can to measure a candidate before using their time. Look at their github projects. Read their blog. Remember that the recruits are interviewing you too. How would you judge a company with a recruiting process that feels micromanaged, indifferent, inflexible, or inefficient?
If youâre trying to sell the team, your company should act like thatâs a priority. If you have a âmeet the teamâ page, and only 19 of the 325 employees are on it, Iâll make some assumptions about the quality of the team and what you think about the remaining 306. Unless your team is fighting crime, invisibility doesnât equate with awesomeness.
Try to turn your interview process into an experience. It doesnât have to be exciting or expensive. Iâve had great interviews over a beer or lunch. Iâve heard that some companies have their developers play a game of ping pong with recruits. These simple rapport-building ideas are shockingly rare.
Use care though. If your candidate doesnât drink alcohol, or like ping pong, the technique may backfire. The candidate may not feel like youâre a good fit.
Maybe that self-selection can work in your favor. Shouldnât your interview genuinely reflect the culture and experience of your workplace? Yes, but there is a fine line between cultural fit and discrimination. Software has enough issues with monoculture, so show some flexibility. Youâre not hiring folks to drink beer, play ping pong, and wear hoodies.
You want to hire developers who can cooperate together to solve difficult problems. They donât need to be clones; they just need to have personality traits that will help your company achieve itâs goals. Your hiring process will impact the kind of person you hire. If your interview feels combative, it will select for people who like to argue. If your interview has a collaborative feel, you will bias towards people who do well collaborating. If your interviewer dominates the conversation, youâll hire meek candidates.
Your culture starts with who you hire. Align your hiring process with the culture you want, and make that part of the positive experience you create for the people you recruit. Most talented people want to work where they feel like their best qualities will be valued. Use that to your advantage.
Make interviews conversational rather than procedural. Getting bombarded with questions feels boring. When your developers talk about technology over lunch, are they taking turns asking each other algorithm questions? Or are they having lively debates over the future of wearables, or how to improve UX with visual feedback? A conversation rather than a quiz will make your candidates more relaxed. It will make the interviewers seem more like potential colleagues rather than gatekeepers. So have a back-and-forth about the dangers of KVO, or trade techniques to get better results with auto-layout.
The point isnât to skip the technical skills part of the interview. You still should have developers write code in your interviews — preferably on a computer. But before you get there, ensure that each interviewer builds some rapport first. Your candidate is interviewing each of your employees just as much as you are interviewing them. An interviewer who jumps right into a technical challenge wonât seem credible or very collegial to a senior candidate.
If youâre bringing a candidate in from out of town, be sure youâre selling the city as well. Show them around, and make sure they have enough time to get sold on it. Your desk farm isnât the best part of San Francisco. Your conference room isnât listed in Austin tour guides. Give them some ideas of things to do, places to go, what itâs like to live there. Make sure they experience your city. If youâre asking candidates to move, you asking them to change their life in a big way. At least make the new life seem attractive.
Most importantly, treat each candidate as if you want to have a long relationship with them. One recruiter â from a large software company everyone has heard of â knows this. Some time ago, I interviewed for two different jobs at two different times that she helped arrange.
My first interview went so poorly that the manager decided not to hire anybody for the position. An exaggeration, but thatâs how I felt afterwards. When the recruiter approached me afterwards she was apologetic and kind and told me that she would keep me in mind for future positions. She made it clear that the decision was an organizational one, not due to the interview.
The second time, I had a bad day and bombed the phone screen. My brain melted and I couldnât even answer basic questions about the technology I use every day. And yet when she called me afterwards to break the bad news, she still said she would keep an eye out for future positions that match my interest. I actually felt good about the rejection, even though I really felt I performed poorly.
If anyone I know wants a new job and might be a fit at her company, who do you think I’m going to send them to? Yes, the same recruiter who took the trouble to establish a relationship. I have already introduced her to one brilliant friend.
The recruiters who cold-call me during work hours? The ones who wonât share the name of the employer, or who treat me like merchandise? They wonât get my help. Recruiters and companies who take the extra time to treat me like a human earn my attention.
This advice probably doesnât sound too different from your marketing, customer service, or user experience efforts. Like those fields, you donât solve problems by just spending money. You have to think, stand out, and demonstrate that you care by taking action. Interviewers need to be trained. Like other processes, change requires measurement and feedback, and the results need to be measured â yes, some of your competitors are gathering feedback from candidates using surveys.
Did you get 34,295 job applications this year? No? Then you shouldnât use Harvard for your recruiting template. Shape each step of your recruiting process to do more than just eliminate candidates. Sell your company. The minimum viable recruiting process will hire the minimum viable developer.