Spoiler alert: Find developers in their natural habitat. I would know. I’m a developer myself.
I was recently invited by my fantastic recruiter, Kelly, to speak at her agency about what Github and Stack Overflow are and how to find great developers on these sites. While preparing for the talk, I was surprised by just how little information was available about this and how much of it was already outdated.
So I thought I’d fix that.
I won’t cover the more obvious channels such as LinkedIn and Twitter, but here’s how to find developers in their natural habitat and how to reach out to them so that they actually respond.
What is it?
“Nearly 2,000,000 programmers from all over the world ask and answer programming-related questions.” (source: How to Find the Best Software Engineers on Stack Overflow)
How to search?
This is where the internet failed me on my research for this talk. The few articles that I found about sourcing candidates on Stack Overflow recommended using google “xray” searches, but that appears to now be blocked somehow because these no longer return results.
Luckily, all Stack Overflow data is available on the Stack Exchange Data Explorer. Even more luckily, I’ve created a SQL query for you. Just type in any location and any valid tag. Click Run Query and you’ll get a list of the top users for that tag.
If you don’t know SQL but want to unlock the full potential of Stack Overflow, take this Codecademy SQL tutorial. It is designed with beginners in mind. If you run into any problems or scary error messages, search Stack Overflow and chances are you’ll find the answer! Now you know SQL and have Stack Overflow reputation points. Talk about some tech street cred!
Digging up details
This article has tons of info on what all the numbers mean on a Stack Overflow profile. Just ignore the section on using google to search Stack Overflow.
What is it?
An ever-growing library of real, working source code. Millions of developers use it to share their code with the world, and to build upon other people’s code.
For example, if I wanted to play with image recognition, instead of spending years coding that up from scratch, I could just search for it and use one of the 1,138 existing projects that are already available.
How to search?
This article will walk you through the process, but essentially it’s just a matter of creating an account and searching for something like “language:c++ location:london followers:2..20” then filtering to only show users.
Digging up details
Once you’ve found a promising user, go to their Repositories tab. You can then filter based on where the code came from. “Forked” means code that they’ve copied from other users. “Sources” means code they’ve created from scratch and uploaded to the site.
Also, check out their Public Activity tab to see what they’ve been up to most recently.
Now that you’ve found some great candidates and looked around on their profiles, find their other social profiles. I’ve never used it, but 360 social looks to be a nice tool (currently free) for doing just that.
My email must-haves
For me personally, the key things that I need in a headhunting email in order to respond are:
- Personalization: Maybe it’s a Stack Overflow answer that I put a lot of effort into. Maybe it’s a blog post that you found on my site. Mention something specific to me. I don’t want to feel like I’m part of an email shot that’s been sent to 4000 programmers.
- Benefits: Why would I be interested in the opportunity? Ideally this will be personalized as well. For example, maybe you’ve noticed that I’m into hackathons and the company you’re hiring for holds regular internal hackathons.
Other developers have similar advice for recruiters.
This article is another good resource, especially its example emails, such as:
Subject: I saw your Android/Asynctask question on StackOverflow
Copy: and I admit I do not even understand half of it. What I do understand however is that you are developing an Android app — something our company would need!
Subject: I’ve found your jquery.qrcode.js plugin..Copy: .. to be especially well documented, I could understand the functionality even without being a software engineer myself. Did you enjoy working on it? I would have an opportunity where you could work with related technology.
After you’ve sent an initial email, wait maybe 5-8 days, then reach out again. I’m fine getting a gentle reminder. After that, if you really want to reach out again, keep it short and perhaps even use humour. Nathaniel at Huxley inspired the following suggestion for a third email:
Subject: Just making sure you’re still alive
As a developer, I’d probably respond to this email, even if it were just to say “No thanks.”
Using a mix of in-person and online connections, and really personalizing your emails, you’ll be more likely to find high-quality candidates and actually hear back from them!