A (Possible) Solution to Finding Good Programmers or a Good Job

January 31, 2007

In my previous article on finding good employees, I wrote how painful it is for both programmers and those looking for them to get together. The current resume shuffle between the programmer, the recruiting firms, and the employers just doesn't work very well.

The recruiter game seems to be like Dr. Frankenstein asking his "recruiters" to go out and find him a brain. What he gets back is a pile of various body parts from the graveyard delivered to his feet in the hope of getting a reward. The hope is that somewhere in there is a brain. Not a very pretty image but that's how it works. An employer needs X and recruiters fall over themselves to toss enough resumes in the pile hoping that one is good enough to get them paid. For both the employer and the prospective employee it's more of a weird lottery than a real job match.

Of course if you go to any recruiter's website, they brag about how wonderful and qualified all of their people are. In reality most are nothing but body shops. You are lucky to find recruiters that can even spell the technologies being sought much less be able to separate the good from the chaff. Employers expect to be disappointed in the resumes they get, employees expect to be dumped into a big pile and never even called unless they show up randomly at the top. Of course there are really good recruiters out there who are passionate about their job and maintain great contacts. Sadly they are in the minority.

So how do we fix this sorry mess? Since I am at the employee end of this process I did have time to think since my last article. Naturally it's easy to come up with ideas but I am sure implementing them would take some effort.

One of the biggest irritations is that for both employer and prospective employee it's an endless cycle of doing the same things over and over again. Your reputation as an employee and your needs as an employer start over every connection. It's like having to log on again after ever web page you visit.

After wishing that there was an easier way to get employees and employers together directly, I decided that a decoupled and cached approach really did make more sense (hey I am a programmer after all!). The connection company (I refuse to use the word 'recruiter') contacts both sides of the equation as today. The difference would be that each prospective employee would be interviewed only by an experienced engineer in their own area, each entry in their resume checked (at least for truth), and at least N (lets say 5) technical references (people you worked with on a daily basis) would be called. All of this plus a background check and anything else that makes sense. The results of all this, plus a video of the interview, would be available for a prospective employer to view. The employers likewise would be checked (like D&B, etc) to make sure they are legitimate and dependable. Each employer would also be allowed to add information on the types of employees they would likely to be interested in, as well as being able to post specific jobs.

Each employee and employer accepted into the system would receive a personalized key. So if I would like to work at a company (in the system) all I have to do is give them my key. Using their key and mine they would be able to view my information, all the notes from the interview, as well as view the actual interview if necessary. This way I don't have to do anything special at all. If we do get together the interview can focus on specific things like personality, good fit, gut feel, etc instead of the usual introductory dance. The likelihood of being hired or hiring on the first meeting is much more likely.

I think the key to making this work (beside a great marketing campaign) is to charge the employee a little to go through the process (since it is labor intensive, and also make sure people are serious) and charge the employers a monthly fee to be in the system rather than only grab a percentage of the final salary or hourly charge. In this way it becomes more of a utility (like water) for connecting people together.

Another key is making sure you have fully qualified people doing the in-depth technical interview and not the usual "recruiter" types. If I interviewed a prospective java programmer you can be sure they will be qualified. So you have to find some way to keep your interviewers motivated to do this every day (most programmers hate this duty). But this is vital since you are essentially allowing any prospective employer to base much of their decision on this one interview session.

I imagine most recruiting companies would claim "we already do this" but in reality none of them go very far at all. If the system worked today as they claim I would be working already, employers wouldn't find recruiting companies a notch below used-car salesman, and employees would all have excellent jobs.

Can this work as a business, doing it right and not descending into the usual bodyshop mentality? I don't have any special knowledge into the financial aspects of a recruiting company, but there seem to be hundreds even in this area so someone is making money. At 30% to 100% markups (and hiring cheap labor themselves) it would seem profitable. My somewhat more involved system might make it more challenging although if the benefits are there for the customers (who are all motivated to have someone better) they has to be profit in it. Fixing something everyone hates seems like a business opportunity.

Anyone think this would work?