Wednesday, January 31, 2007

The 10 Commandments for Technical Recruiters


I don't care if you are an internal or external recruiter, agency, independent, retained, contingency, contract, permanent, whatever. You're dealing with highly sophisticated and sensitive people if you are placing high level IT talent. They are constantly judging your fitness for your job. You'll need to follow these guidelines if you want to be effective. Like the professional mountain guide the professional recruiter shows people the safest way to the top while minimizing risk as much as possible. If you really want to be the best you can start with this advice. . .

Thou shalt love people and your job. Have you ever bought a cup of coffee and gotten service with snarl? Don't you wonder why on earth someone who seems put out with people is in a position where all they do is deal with people all day? There are better paying jobs where you don't have to talk to anyone. There's no reason to deal with the constant turmoil and pressure of recruiting unless you really love it.

Thou shalt achieve 10/1 and then improve. Quick, what is the definition of world class recruiting? There's not one? Now there is. Call it Dave's law. If you submit 11 people for a job and none get hired, you suck. Period. If you submit 10 and 1 gets hired you have passed. Now try to improve. The best recruiters have a close to 1/1 ratio because they know so much about what the client truly needs. Get better.

Thou shalt not cop a 'tude. There was a time for haughty attitudes. It has passed. Your company is the best. Your company only hires a select few. But every other company is saying that too. The best candidates have limitless options. They don't need to put up with your superiority complex to get a job. Like the mountains, the upper levels of recruiting require a high level of awareness and respect if you want to survive.

Thou shalt learn how to talk to smart people. A person with a Master's degree in Computer Science and 20 years of experience working for the most sophisticated software development shops in the world is a person who isn't going to put up with much. I have gotten results by telling people up front "I have a degree in English Literature and so have no clue about the actual technical details of software development. " However I do understand people and how to meet their needs. I ask people to explain things to me in layman's terms. Quality technical recruiting is a multistep process consisting of asking the right questions. Turn down the sales pitch and turn up the intelligent questions about what the candidate wants to accomplish and how you can help.

Thou shalt not throw shit at the wall. I had a meeting with a manager at a client who showed me a candidate's resume that had been submitted over 300 times to dozens of jobs in the company. He had gotten a couple interviews but not progressed. He had been submitted by dozens of different recruiters as well as himself. None of them looks very smart in the client's eyes. As in the mountains, you need to be an excellent judge of who has the best chance to be successful.

Thou shalt close the loop. In this day and age I don't think any recruiter has time to respond to every person who submits a resume. However if you submit a candidate you should be able to tell that candidate what happened and why. Hiring manager won't tell you? How are you supposed to get better? Stop working on this opening until they are willing to give you real information. It is your responsiblity to assess every situation in which the candidate you put in doesn't get hired and be able to explain why.

Thou shalt slow down. I don't care what anyone else says, quality recruiting is NOT a volume business. Precision is the name of the game. So many engineers are resistant to recruiters because we send lame emails in which we misspell their name, ignore statements made on the resume about what they are looking for (sending a person stating 'no relo' an email about a job on the opposite coast,) and other errors. Before you shoot the email or make the call, think, "Is this the right thing to do right now?" "How do I look to the person I am sending this too?" Mistakes mean death in the mountains and 'no hire' in recruiting.

Thou shalt learn how to spell. Especially the candidate's name. I know Vikas Kamat you can handle but cut and paste was invented for names like Nahasapeemapetilon.

Thou shalt be responsible. Whose fault is it if you put a candidate in front of a hiring manager and the person doesn't get hired? Yours. You are the guide.

"Yeah but the manager didn't tell me . . ." You didn't ask the right questions.
"Yeah but the candidate didn't tell me . . . " See above.
"Yeah but I didn't know . . ." See above.

I'm not saying you need to beat yourself up about it. I'm saying every time a candidate fails to get the job you need to do a postmortem to figure out what you missed. You missed something.


Thou shalt know who your customers are. Who is your customer? The client (or your employer if you are an internal recruiter)? Yes. The good candidates? Yes. The candidates who don't match your reqs? Yes. Everybody? Yes. All of them are your customers. The Starbucks mission statement says, "Develop enthusiastically satisfied customers all of the time." What if we adhered to this philosophy? There would be more of this.

To sum up from what I hear from prospects and candidates I talk with, there are a lot more ineffective than effective recruiters out there. Effective recruiters will adhere to the 10 points above. Go to it! Get your candidates to the top! They will send their friends.
We are professional technical recruiters. Our job is not to source resumes and candidates. A mountain guide's job is not carry supplies, fix ropes, or any of the other details they have to attend to. It is to get clients on top of the mountain. Our job is to PLACE people on the top.
Think I'm wrong? Tell me why.

Thursday, January 25, 2007

Preparation is Key


Extensive preparation is one of the most important things to focus on while pursuing the ideal job. Some candidates realize this while others think that by just going through the motions of the interview process they have a chance. Lack of preparation significantly decreases your odds of getting the job. Let’s look at it this way, simply said, you can’t be over prepared for an interview.

Mapping out the entire interview process for the candidate is of utmost importance. There should be nothing unexpected from the beginning. A good recruiter will use all of the information accrued after debriefing previous candidates to the current candidates advantage without just giving you the answers to questions you may be asked-that won't help. By preparing the candidate every step of the way, odds of success go way up. The candidate and the recruiter together should cover all aspects of the process. Candidates should be told about every person they will interview with in as much detail as possible. If that person has a specific style of interviewing a candidate should be aware of what they are up against.

Following are 5 main preparation areas to focus on in no particular order:

Commitment to the Recruiter/Agency
To fully utilize what a recruiter is doing for you, you as the candidate must make a commitment to them. If they are giving you advice and information about the company and their process then there must be a good reason for it. Making a commitment to work with that recruiter and being receptive to their direction, advice and guidance will increase your chances of getting that job.

Complete Research on the Company
To thoroughly understand what you are up against while interviewing for a specific company you as the candidate must research all aspects of the company itself. Do research about the company’s services and products. Find out what they do. Find out why the company was founded. Look into the history of the company. What major changes have come about throughout that history and why those changes were important to the current success of the company? Find out what the culture is like at the company. Why is the culture that way? Why do people want to work there? Also, find out about the people themselves. Find out as much as you can about each and every person you interview with, both before and during the actual interview. By learning about the interviewer during the interview you build rapport with them. This will obviously help you in the long run. There are several ways to find people on the internet today. You know how to use Google to find someone's name. We also recommend searching groups to learn about what technical topics a given interviewer is active in discussing. There are also some really valuable networking sites out there like LinkedIn. Use them to find out what your interviewers are all about.

Skills Review
First it is your job to find out what skills are expected for the job, which ones are most important and which ones will be focused on the most during the interview process. If C++ is the top requirement because the software shop that you are interviewing at has maintained a culture and a mission of nurturing an environment where they claim they have the “best C++ shop in the world” then you better believe they will be asking you some extremely difficult questions about more advanced features of C++ such as STL, templates, and exception handling. If you find out that the company is a shop that makes extensive use of Design Patterns, buy the Gang of Four Book. Be prepared. Be ready for the most difficult questions you can find on the web regarding these topics. A good recruiter will have their own examples to offer.

Rockstar programmers sometimes botch an interview because they come across as arrogant. Knowing the information to come up with a good answer is one thing. Knowing how to deliver that answer is another. The delivery is all in the attitude. Having an attitude such that "this guy is asking me for some nitpicky trivia and I need to just regurgitate what I memorized" is the wrong attitude to have. Assume the question was posed to you in order to start a conversation about that topic. Practice starting a dialogue with the interviewer about how the company uses the technology, what the opinion of the technology is, what you have done with it in your other jobs, etc.

Practice Interviewing
When you were learning how to tie your shoes and later on your multiplication tables, how many times did your Grandma tell you “Practice makes perfect”? There certainly is some wisdom in this simple phrase. I said it and I will say it again. You can’t be over prepared for an interview. A good recruiter will set up some calls with you to conduct mock interviews that will contain questions similar to the ones that the prospective interviewers will ask. He/she may not be able to critique you on the content of the answer. However, they will definitely be able to help you on the delivery. You can also spend time doing the same thing with your family or friends.

Soft Skills
In interviewing it is important to have a consistent story about everything. Why are you leaving your current company? Are you AND your family sold on relocation to that city? Why? Salary discussions are a potential minefield. Learn from your recruiter how to talk about compensation issues and cost of living differences if that is relevant. Why do you want to work for this company? This is very important. If you can’t convey in detail why you are attracted to that company, they won't see a reason to hire you. Prepare for this. It will come up.

It is very important to build a relationship with every person you speak with on the phone and in-person. Find out not only what they do, but why they enjoy working for that company. What do they like best about the company? Most companies are making a group decision so you need to get as many of the group voting in your favor as possible.

Finally, “don’t ask, don’t tell”. This is a very simple phrase with a lot of meaning. Don’t volunteer personal information. Nobody wants to know if you are going through a divorce or what your other personal struggles are. Focus on your qualifications for the job and avoid saying too much about your personal life. Being able to do this in the interview shows you'll be able to do it on the job.

Here's a story about one individual who did everything right.

When we met Ryan, everyone here at Core Search Group was extremely surprised to hear that he had connected with several recruiters in the US and was unsuccessful in finding a single one that would work with him. "Call us when you land", they said. You see, Ryan, a citizen of the UK, and his family were in the beginning stages of making a move to the US. He already had a final working day scheduled with his company in the UK. No visa sponsorship was required as he is married to a US Citizen. It was exactly the same as if he had been a US Citizen currently living in the US.

Here is an anomaly, an extremely talented, intelligent, qualified... all the adjectives you would use to characterize "an ideal candidate" but no recruiters would work with him. We were honored to have the opportunity to work with such a candidate as Ryan. Ryan contacted us on April 28th. He had already purchased plane tickets to land in the US on June 21st and was available to start with within a week of that date. By early to mid June, not much more than a month later, I received an email from the hiring manager: “we want Ryan to work for Bloomberg”. It is a simple statement but a very commanding one. That is when we first realized that all of ours and his hard work had paid off. We had an offer for Ryan and then a start date.

Ryan was by far the most prepared candidate that we have every worked with. He would even take on study sessions on his own that we didn't assign to him. "Deep in design patterns now, I think that was the weakest part of the last interview. We need to discuss what to expect from the next interview though, that will help me focus on what to revise." He was prodding us for more prep help. This is the kind of attitude that will bring a candidate closer to the end goal.

With Ryan, his hard work and perseverance really paid off. In the end we received an offer from the client, his current company, that was 10% higher than anyone expected, including Ryan.
In the end we helped a really talented individual find a great job that he loves. “I work 12 hours per day not because I have to, but because I love what I do.”

Oh, yeah, BTW – upon initial submission, the hiring manager rejected Ryan’s resume. He is glad he listened to me when I explained he was in fact the type of person the company was looking for. Plus we have gained some heavy trust from the client because of this. However, it would have never happened if Ryan went into this with the wrong attitude.

Thank you Ryan!

Watch this space for another posting on our custom PREP methodology in the future.

Tuesday, January 16, 2007

Want to be a rock star candidate?

In the past 5 0r 6 years I've worked with hundreds of candidates who have gone in to interview through us for a job they really wanted. Our company goal is to place at least 1 in 10 of those who go in to interview. We often achieve a much better ratio that that. Frankly there must be easier ways to make a living (get a PhD in CS and work for Microsoft? Sounds hard.) In our experience the ratio of hires to applicants for those trying to get into the top companies without the help of a quality recruiter is many many multiples of this number. Oh how I want to get this fact across to so many candidates and clients I talk to: good recruiters save you time and save you money by more efficiently putting the best people (companies) in front of you. Don't get me started.

The interview. Everyone's favorite way to spend a morning-being poked and prodded by a group of people looking for a reason (or not) to hire you. If you're trying to get into Google, Amazon, Microsoft, or other top companies the web is alive with scary stories of nutty unsolvable problems these companies give. One thing all the best companies are exceptionally good at is scientifically comparing every single person who comes in the door to their best people. Their simple rule is they don't hire you unless you measure up to those people.

What do these companies want? Why do they select some candidates and not (so many) others? Is there actually a method at work that makes sense? From the conversations I've had with software engineers out there I know a lot of you are very confused, and dare I say bothered, by the way these things unfold.

No one has let me in on the great corporate secrets but I think I can demystify what companies are looking for from my experience placing solely extraordinary software developers over the past five years. They are looking for ROCKSTARS. Are you one? If not you can learn to be. Here's how:

Resume Follow the link to learn how smart companies view resumes. Your resume should be much more than a bland list of your education, experience, and personal information. Most resumes stand out about as much as a piece of hay in a haystack. The best companies are looking for needles. Some of the clues they look for are:
*People who began programming at an early age. Early curiosity in programming is a very common trait in the best developers.
*People with uncommonly stable job histories. If you are not staying a minimum of a couple of years in each job and growing within the organization, don't send your resume until you are.
*People with a logical and advancing career path. Points are not given for going from programming to QA and back again. The best companies know where they are going and would like for you to have a plan too.
*People with PASSION. We have unlimited numbers of resumes from people who got their degree in CS because it was a hot industry to be in. The best companies are not looking for these people. Bill Gates didn't need a degree at all because he had passion. Passion adds points to your score across all the categories below and adds significantly to your odds of getting the job. Extra work such as being involved in open source work, being on standards committees, filing patents, inventing new products, or writing about your work are some of the ways of letting your passion out. Find it and nurture it.
*Exemplary educational credentials. Yes people are impressed if you went to a great school. But most often that alone won't get you the job. If you don't have a degree from MIT or a 4.0 GPA, don't despair. The next category can override those standard measures.

You want to be sure to list every technology that matters that you have worked with, but smart enough to avoid claiming expert status in something you are not. One of the most dangerous people in the world is the person who thinks he knows things that he does not. The costs involved in a software project that doesn't meet expectations can be enormous. The best companies ruthlessly check that a given applicant actually knows what they claim to on the resume. One of the most common types of feedback we get when a candidate is turned down for a job is "this person couldn't demonstrate the knowledge they claim to have on the resume."

Opportunity. Have you ever looked at Steve Job's resume? If you didn't know what he's accomplished you wouldn't bring him in for an interview would you? The best companies want to know what you can do for them, period. You must be able to show how you will return them in value many multiples of your salary, the more the better. They don't care where you went to school, what your GPA was, what you look like, or how weird you are, IF you offer some amazing opportunity to them. You'll need to use your questioning skills to find out what their most pressing problems are and show you have solved or know how to solve them.

Corporate knowledge. Blind dates blow up when you walk in talking about yourself and how great you are and why your date should want to marry you. She'll be thinking, "Next." Even if it's all true nobody wants to hear it. Contrast this scenario-you've been set up with a young lady by one of your mutual best friends (me) who knows you both intimately. You know she's an artist. You find her website and really love her art. You understand it. When you start talking about that you don't have to be the most handsome, richest dude in town any more (though it woudn't hurt.) If you are going to interview with a company you want to work for you better know every fact on their website, read any available book by an insider about them, research their history, and study their current financial report. Do us all the favor of not going to interview unless you are quite sure the company is the sort of place you want to work.

Kultur. Are you a very conservative, right wing political idealogue who also happens to be a great software developer? So what. Don't apply to Google. If you don't spend some time researching the culture of the company you are interviewing with you are certainly harming your odds of getting hired.

Skill. What are the hard interview questions C++ (or whatever your language is) developers get asked? What resources can you study before your interview to make sure you are going to do well? Developers always tell me, "I don't have to know trivia about my language. We can look up anything we need to know." Yeah, but not in the interview. Every company will judge you on your baseline knowledge. If you don't want to play by the rules how can you win the game?

Trust. Who is your favorite coworker right now? Now rank all your coworkers on the level of trust you have with them. Is he or she also the person you trust the most? Probably. Can you get a sense of whether or not you can trust someone from a short conversation? So can your interviewer.

Attitude. Five jobs in five years? Why? Answers like bad boss, bad company, bad coworkers are just excuses. Don't have excuses. Tell the truth. The product didn't sell. The company ran out of cash. Facts, not opinion. If you have failed in the past and can discuss it unemotionally and rationally and without defensiveness your odds will increase markedly. How fast did you recover? The best companies want the people who can fail 10 times in a row without losing momentum or doubting themselves. The quicker you get to the eventual success the better.

Results. You have software projects on your resume. So does everyone else. Why were your projects successful? How exactly was your input instrumental in that success? Say there are x people on your team. If you ranked everyone on the project from 1 to x in order of their contribution to the projects' success, 1 being the greatest contribution, would you be number 1 or 2? If not don't send your resume to the best companies. Go achieve this measure on a project, then send it.


Success. The person with the highest salary at Microsoft is the guy who gets the products out the door. In terms of getting you the job, nothing beats having worked on the leading software application at the leading company in the space. If you were also the lead developer on that project you'd have to work really hard at screwing up the interview enough to not get the job. Unfortunatley I know it is possible. The best companies want to know what qualifies you to hang with the people who already work there. Those folks want to know you can operate at their level. Better have some examples ready of how you already have. You should find out through your recruiter or other sources what the top intitiatives are at the company, what project they want you for and why, and have a plan for articulating how you can help the project succeed.



If you've ever watched The Apprentice you should have a pretty good idea of how this process works. That big blowhard with the stupid hairdo simply gets together a group of people who appear to have the best chances of being his hire. The one who gets the job proves through a series of tasks to be the one who most often succeeds relative to the group. As in any competitive endeavour the difference between the person who gets the job and the other applicants can be a very slim margin. Your job is to use the ROCKSTARS criteria to make sure you will be The One next time you go through the process.