I want to believe that you’re trying to make the best of a bad situation. I know you’re probably not an idiot, but you’re probably not really experienced with hiring senior programmers.
I know, this post probably seems condescending or rude, but the fact is, we have been burned … a lot.
You probably know by now that programmers, as a rule, hate recruiters. That’s a pretty strong word, there … hate. The sad truth is, programmers are “in demand” in the job market, and for every five programmers out there, two of them are bad at it. But, they’re working, too … because for every five programmers, there are fifteen jobs available.
Seriously, go to Google, and type “Why do programmers hate recruiters?” Today, there are “[a]bout 628,000 results.” That’s just the tip of the iceberg. Your compatriots have set the bar really, really low.
Let’s make you a commission.
Your job is to find a good candidate, right? OK. First things first.
Find out what on Earth you expect us to do.
Seriously. Literally — I’ve counted this out before — I have gone through 58 e-mails from recruiters before finding one that actually mentions what the job is.
I know, I try to believe that you’re not an idiot, but that kind of basic stupid mistake is really hard to come back from.
Hint: None of these things count as a job description:
- A bare job title like “Senior Systems Programmer” or “Mobile Application Developer.”
- Names of products, operating systems, or programming languages: “iOS Programmer,” “Perl programmer,” Java, Linux, Apple, Lisp, …
- A list of desirable skills or experience.
- The name of some college degree or other.
Here are some actual job descriptions:
- Develop a new operator control application stack for management of immersive (hardware/software) simulation devices
- Implement the server side of a real-time, sports-based game
- Develop an MMO-RPG game engine for thousands of simultaneous players
- Develop back-end utility applications for internal maintenance of a shared, real-time data set
- Develop embedded software for person-to-person communications with internationalization and localization to many language environments, including CJK languages
- Create a web-based GUI wrapper to interact with a legacy mainframe application over the 3278 terminal interface
- Maintain Electronic Data Interchange (EDI) software between a variety of trading partners using formats such as fixed-width EBCDIC records and X12N structured streams
- Create Internet “chat” programs with web-based and VR-based front-ends
- Develop multimedia, interactive presentations for WWW and DVD distribution
- Develop software for high-volume printing press systems to streamline order proofing, production, and shipping processes
The job description should read like something that would appear on a résumé.
Step 2. At least pretend to read our résumé.
They’re longer than you’d like, I’m sure. Most senior developers have a CV section that runs on for a page or two, at least, and probably some skills summary stuff that goes on for another couple pages.
Read it. You might not understand all the tech terms, but at least you’ll have some hope of finding out something useful or interesting about us.
We are not your customer. We are your “victim.” Your goal is, of course, to hire programmers for your customer. That won’t work out too well if you haven’t even looked at our résumés. You might get the college kids with no practical experience, but you’re not going to get someone for a leadership rôle.
Step 2(a). Spell our names right.
You should be able to get at least that much.
PS: Trying to reference us on a first-name basis comes across as … smarmy. And, if you can’t correctly figure out what given name we use, it’s a bit of a red flag, too, isn’t it?
I’ve seen a Viet colleague get e-mail that mistakenly had her family and given names backwards (… since her family name, as is common in East Asia, came first). I routinely get mail with my given name misspelled or truncated, even though there’s a specific FAQ on my résumé “explaining” my name.
Step 3. Write a reasonable e-mail.
You want to reach a programmer? Great. Send an e-mail.
Don’t phone. Don’t even think about a phone call. Seriously. What if we’re at work? We’re sending you to voicemail, and deleting it without listening. Really. What if we’re at home? Same thing. We have caller ID. If you’re not in our phonebook, we push the big red ✗.
We all have e-mail. It echoes to our PC, our laptop, our tablet, our mobile phone, maybe our watch or something. We get your e-mail the second you sent it.
And we glance at it and read the first six words or so of the subject.
And then, we delete it or hit “reply with canned message → buzz off.”
Your only hope of getting that e-mail actually read is to get your foot in the door with that e-mail.
Make the subject memorable. “Can we talk?” is not it. “Urgent need…” is a turn-off. “Senior Developer” is not helpful.
Try cutting down an actual job description (see above) into about 5-6 words. “Game developer for FPS physics engine” is a good example.
Then, put your e-mail together like you’re writing a telegraph. Time is money, and we are probably reading your e-mail on a cell phone while we’re doing something else that is, to us, much more interesting.
Here’s a good template to work from:
Hello, Ms Susie Programmer; I found your résumé at <LINK> and I see that you’ve been working on firmware for some simulation and game devices.
I have a position here at CompanyCo. designing a new videogame system combining physical simulator systems with augmented reality components. I thought you might be interested. Some of the early press coverage of our prototype is here: <LINK>
If you might be interested (or know someone who would be) please drop me a note at your earliest convenience.
That’s about it.
HINT: do not paste some 5-line (or 20-line!) signature with a bunch of graphics. Seriously, that’s tacky.
That is about the most you’re going to get us to read. That’s the sort of pitch that actually gets good candidates to respond.