|TL;DR version: When developer talent sends you an email, you fail to reply!!!|
To all the startups and companies whining about lack of developer talent, I call your bluff.
I ran a little experiment over the last 60 days. I sent emails to ~50 different companies (some well-known, others unknown) that were looking for "Sr. Developers", particularly Ruby devs, as found on the major developer job sites (stackoverflow, Dice, Indeed, 37signals etc). I mainly targeted companies that were potentially/maybe/sorta/kinda/probably/possibly able to accomodate some form of telecommuting/remoting. I also picked companies that most closely matched my skillset. In my email I introduced myself and included my resume. Here is how I am represented in the email (paraphrased from actual text, ):
Given: X > 7 & Y > 4,
"Sr. Level Developer, with X years exp. Y years of prof exp with Ruby. Main expertise is in Ruby, API's, MySQL and a bunch of other stuff. Previously worked for 'ABC' startup ($X Millions angel backed) for two years and helped build out the entire app/platform etc. Later served as CTO for several side projects. I attended Top Tier University , ... blah blah blah"
Salary expectations: $115K
Areas of interest: API's, Analytics, SaaS, Telephony, Machine learning ....
Ability to relocate: Open to idea, can't right away
Telecommuter?: Pretty please
Snark level: Not nearly as high as this post ;)
Likeability: Very high
So out of ~50 companies that I tried contacting what was the result?
10/50 - sent me a reply email of some sort (confirmation, autoreply, whatever)
7/50 - tried to setup a phone screen
5/50 - actually completed the phone screen (with all phones screens going very well, I might add)
3/50 - tried to setup a technical interview
0/50 - actually completed a technical interview
0/50 - made offer!
From my 60 day simple experiment, I argue......
The top 5 reasons you are (probably) not hiring:
1. You don't read or dont respond to emails!!
How can 40/50 companies or their recruiters not even respond to an email at all? Why heavily advertise a position only to not follow through!
LESSON: Check the email box for resumes
2. You allow for big time gaps in your hiring process
The hiring process at some of the companies that contacted me was just strange. One day they ask me "when can we setup an interview?", so I respond right away. 4-5 days later they get back saying "Ok how about next week?". LESSON: Long delays in communication make me lose confidence in the process/the seriousness of your interest etc.
3. Weird extra steps
Some companies like to send riddle/puzzles/challenges etc, which is fine with me. This might be a barrier to some people that think its absurd. What does it prove? That your team spends lunch break browsing trickyriddles.com? LESSON: riddle/puzzles/challenges might seem cool to you but might just seem like another hoop to me.
4. A cultural mismatch
"Xbox's PS3 Nerf guns Starcraft/Rock band competitions !!!" - Nothing against any of that, but as married father of two, I have other concerns (what no ping pong table?) like "Compensation, Opportunity for Advancement, Great Benefits, Fast Growing, Opportunities to contribute/architect etc". If you think of "Xbox's PS3 Nerf guns Starcraft/Rock band competitions !!!" is an applicant deterrent, then I agree with your strategy. LESSON: not all programmers/developers fit the fold you are presenting, many of us are unique!!!
5. You dont hire telecommuters/remotes even if you say you do
This has been talked about ad nauseum...
Other potential reasons: Administrative snafus, HR general laziness, what HR?, the site's down, I want too much money, your company has a bad reputation, others?
So after 60 days I am still looking ;) but based on my simple research project, 80% of companies claiming to need developers are either nonserious or are too busy to even start the hiring process.
I know, this research project is flawed and anecdotal but maybe it can help you rethink/iron out any bugs in your hiring process. If you can't find talent, my guess is that you are probably failing in one or more areas above.