Wednesday, March 28, 2007

Software developer's guide to working with recruiters-decision analysis.

I hear from so many candidates so much confusion about what recruiters do and why. As our mission here is partly to treat our candidates like customers, I want to help you understand.

1. Your responsibilities. Many of the problems I hear about from candidates can be traced back to things they themselves did or did not do. Let's look at some of the things you should do to control your experiences.

Study the game. Imagine software development organizations as professional football teams. A professional football team is in a constant process of reorganizing itself around the strengths of the individual players. There are 2nd and 3rd string quarterbacks waiting in the wings to replace the first string person if he stops producing for whatever reason. They are gunning for his job but only get it if they get to be better than him. Unless you as the candidate can demonstrate superior production to that person you won't get his job. If you work for a company no one has ever heard of don't send your resume to Google. If you work for Yahoo don't send your resume to Google unless you are the star developer on your team. Decision point-can you articulate why the company should want you based on what you know about them compared to your current company? If not your odds of getting hired are poor.

Learn to play the game. Forget about tweaking your resume with keywords, studying for the interviews, and all the other things people do to get a job for a minute. Companies are looking for the best people they can attract based on their position. Say you are the quarterback for the #8 team in a conference of 2o teams. Don't apply for the QB position at the #1 team. They won't hire you unless you can demonstrate you took your team from #20 to #8 in a single season due to your proficiency. And even then it will be as a backup to their current star. Everything you go through in an interview is to qualify you compared to who they have now and the other people interviewing. If you rank with the best you get the job, period. Let me ask you a question. How many developers are on your current team? That number is x. Pretend you own the company and rank the developers from 1 to x with #1 being the person who has contributed the most to the organization and #x being the one who has contributed the least. I only want to talk to you if you are #1 or #2. Because companies only pay fees to third party recruiters for the best of the best. Decision point-can you tell me why you are the best on your current team? If not start looking for openings through job postings and internal recruiters.

Control your information. I have worked with a lot of candidates who wanted to get into one specific company but ruined their chances by choosing the wrong route to go through. When we placed software engineers with Amazon.com we had a byzantine and unexplainable set of rules to function under. For example Amazon employs hundreds of 'researchers' who scour the web all day for resumes that fit keywords. They dump the resumes into a database where they sit. And sit. And sit. Amazon has a rule that if they have the resume they won't consider the person through a recruiter for 6 months. So we would find a good candidate and check the system. The person was in the DB. Had been for three months. No one had ever contacted him. So we would call the candidate, explain the situation, tell them why we thought we could get them the job, wait three months, resubmit the candidate, and place him. We did this several times. Amazon could hire a lot more good people if their system didn't make it so hard. The fact is most hiring managers do not have time to sift through a DB of ten thousand resumes. This is where the experienced headhunters come in. We qualify and use judgement to present the manager with the top 1% matching his/her requirements. Your job as a seasoned and experienced software developer is to do a smart search. Don't submit your resume online to a company if you can find a better way in. Find a qualified recruiter who has access if you can. Once you get in your target company's database you have a short window of time where your chances are good. If you fail a couple of interviews or are resubmitted by competing agencies who you have tried to play off on each other you can consider your chances with that company to be zero. You are done. Also if you are working with more than one recruiter be honest with each about it and which companies you are already talking to. If two different recruiters submit you to the same company the company rejects you because a. they don't want to fight with two recruiters about who gets the fee and b. they think you must be lying to one of them and great companies try not to hire liars.

Your resume. Don't post it on monster or other job boards or keep it on the web perennially unless you do it confidentially. Remove your name and address and the name of your current company. If your resume is on the web with your name and contact info on it you are being submitted to companies without your knowledge. I have talked to many candidates who can't get an interview at the company they want to work at because their resume has been submitted without their knowledge by a recruiter nobody knows. Learn to qualify recruiters for their skill just like recruiters qualify you. If a recruiter can't tell you the name of the company, the group, the hiring manager, and why they think you have higher than average chances of getting the job, do not let them submit you. They are not qualified to represent you. Decision point-are you convinced the recruiter is the best out there? If not do not proceed.

Research. Once you are in the door and an interview is being coordinated you need to go into full bore research mode. Find every website and blog of current developers at that company and learn everything you can about their backgrounds. This will give you clues to what type of traits they are looking for. You need to pinpoint the areas you are most likely to be grilled on technically and study all of those areas. Learn what the team is doing and be ready to demonstrate how you can help. Pretend you are defending your dissertation. Be ready to answer everything you might get asked. Decision point-have you prepped for days for the interview and had people you trust give you a mock interview? If not reschedule it and take a couple days off work and do the prep.

Understand qualifying. I often explain to candidates that an interview is not about you and your skills and whether they match the job. The interview is about you and your skills relative to all the people currently working there and all the great developers they have ever worked with. Oh and all the other candidates they talk to. You need to have the best technical skill of all the candidates, the best presentation of all the candidates, and have done the most prep of all the candidates. You need to demonstrate that you meet the bar. That you're in the club. You have used and know all the design patterns and can demonstrate it. You have invented cool things, saved projects from failure, and otherwise performed to the level of the current team. If you can't demonstrate that you don't get the job. Consider an interview your own personal "The Apprentice." If you're not number 1 out of the group of interviewees you don't get the job. Decision point- are you convinced no one can do this job better than you? If not look for one that you are sure on.

2. Choosing a recruiter. You need to learn to qualify recruiters just like they qualify you. When I talk to a developer the question in my mind is "why is this person the most likely to get offered this job?" If I can't convince myself you are we don't proceed. You need to ask "why is this recruiter the most likely one to get me this job?" Interview the recruiter like they interview you. How many people has he placed at this company? How long has he worked with the company?

Types. Headhunters. A headhunter is a third party who is paid a fee to bring and place good candidates. Back to the exercise where you ranked yourself in your current group. If you are #1 or #2 great. You should find a qualified headhunter to help you in your search. Qualified means they make placements of people with your skill set all the time (and can provide references,) and have openings in the location you want, and help you get the job. Also look for a number of years of experience and a track record of specializing in what you do. Companies that claim to specialize in "IT, health care, and purchasing managers, nationwide." are full of it. Decision point-do you see an uncommon level of focus (and success) on placing people like you? If not keep looking.

Internal recruiters are like convenience store clerks. They are paid to sell you what is on the shelf, not what you want. They can't give you detailed information on what's on the shelf. They can just point you to it. If you want customized attention and the right thing for you my suggestion is to become the best and then call me or another qualified headhunter. I recently talked with Google about a contract recruiting job. I learned that the internal metric is they want 5 interviews a week set up by the recruiter. Not 5 interviews with good candidates, not 5 interviews that result in an offer, just 5 interviews. This is just one of the ways Google does a really sloppy and ineffective job of recruiting. Decision point-don't work through internal recruiters unless you can't find any other way to get in.

3. Working with the recruiter.
Don't lie. We just dropped a candidate because we learned he had lied to us about interviewing with our client previously. We might have been able to place him regardless of the earlier interview, but we know our client doesn't hire liars so we weed them out right away. If you work with multiple recruiters make sure they all know every company you are already talking to so they don't multiple submit you. Make sure you know every place they submit your resume. Sometimes candidates think going through two headhunters to the same job or company without telling either of them doubles their chances. It doesn't-it almost always completely destroys your chances. Decision point- have you been honest with everyone involved? If not now is the time to start.

What else do you want to know about the best way to get the job you want? Drop me a line and we'll get you the information you need.



2 comments:

Anonymous said...

This is a very good article explaining the way to work with recruiters. If it was posted earlier I would have been greatly benefited. Anyway, thanks!

Unknown said...

"If you work for a company no one has ever heard of don't send your resume to Google."

This is a funny comment,
who heard of google a decade
ago? Companies obsessed with
pedigrees are for the dogs.