No matter the industry you work in, if you’re recruiting for technical roles, you know competition is as tough as it gets. Like any specialist role, it also requires you to get creative and think outside the box by sourcing in places you may not normally look.
Among the various challenges this recruiting process generally faces, the most common continues to be engagement. Every recruiter knows that engineers are virtually nonexistent when it comes to replying to LinkedIn InMails, so the challenge becomes not only finding these talented engineers, but actually getting them to respond, regardless of the platform.
When it comes to hiring engineers, GitHub is the first (and my favorite) place I use to source.
I find that the overall quality of candidates I find is incredibly high, due entirely to the focused specialization of the site.
The coder’s natural habitat
GitHub is the world’s largest social “open source” coding site. Developers use it to host and share code for specific technologies that they specialize in – like Angular, Python, Ruby on Rails and others – in the same way you and I might use Facebook and Twitter to share articles or photos. And it’s no niche site. Github has 32 million users who log in each month.
Why is the site so useful? A variety of reasons. To start, any good recruiter will ask a candidate about particular projects they have worked or are working on as part of the vetting process. There is no better proof of real engineering talent than seeing someone’s actual code and craft first hand. Github provides this, allowing us to contact candidates we find viable based on their work and not their resume, drastically reducing the ‘margin of error,’ if you will. We see so many engineers who claim that they have X-amount of years in experience in say, Angular, but when it comes time to test their skills, they falter. Save me time on the front end of the process? Yes, please.
But I can see your hand going up…how do I as a recruiter review work on Github if I don’t know code? I’ve written before about the importance of the hiring manager in the recruiting process, but possibly more important than that is the relationship a recruiter has WITH the particular hiring manager in this case. During your intake conversation, you’ll be finding out what technical stack your team is working with, and from that information, you can pull knowledge on the types of projects to go search (i.e., “angular” or “backbone.js”). A good rule of thumb to follow is to pull info and profiles on people who have a high number of followers to then review with your hiring manager. Let them know up front you’re going to use Github to search, and they will more than likely want to be a part of the process, and willing to review code quality when you present your A-list.
Get your search on
There are many strategies you can take when using search filters in Github, with the most efficient way being to use boolean strings in the search bar.
Two things to remember here, especially for boolean string bandits. According to the site, your search string can’t be longer than 256 characters, and you can’t use more than five AND, OR or NOT operators.
Another way to find candidates is by starting with language-specific filters. If your engineering team needs a specific type of engineer that works in a specific stack, this is definitely the best way to start.
- Using the Search Bar on the homepage, enter the main language that you are looking for candidate work in (e.g: Your company uses MVC frameworks on the front-end; you may type in “Backbone” or “angular”). When searching for multiple terms, a traditional boolean space/parenthesis string will work.
You’ll see that this search returns a huge number of both Users and Repositories. (For those unfamiliar, repositories are essentially code submissions from those who use the platform.)
Fear not, just click the “advanced search” button to narrow this pool down. Like most filter searches, you can further filter by coding language, location, or number of followers a user has (a high number of followers can be an indicator of coder quality), among others.
Once you’ve filtered down to a number of your liking, you can click “users”, and start digging into the list of talent you’ve built. Again, make sure you’re in sync with what your hiring manager prefers as a metric of a strong profile. Is it number of followers? Is it a certain number of commits on their profile? Use their guidance to select candidates to later review with them.
Playing Detective: How to discover unlisted emails
While many profiles we discover on Github have emails listed, there are definitely instances where you have to go digging a little further. As most are far more likely to respond to personal email than a LinkedIn message (which is why we are hanging out on Github in the first place), it is worth a little extra time to investigate.
Here’s how you dig up those pesky hidden email addresses….
- From a user’s profile, scroll to the bottom where you will find groupings of “Commits” – these are specific project submissions. It doesn’t necessarily matter how recent the commit is, but when in doubt, go for the newest.
- Select one of the Commit groups, and click on one of the individual commits (one window leads to another here, it’s easy to follow along)
- Type in “.patch” to the end of the URL in your browser
- And, viola! Email address acquired
In an industry where our most consistent roadblock is actually engaging a candidate, we ultimately are forced get creative in the ways we find and reach out to potential candidates we want to engage in our interview process.
Not only that, but we want to target candidates who truly are going to add value to our organization. Github provides the technical recruiting world an excellent source of very targeted candidates, and not only allows but innately encourages a recruiter and hiring manager to spend a bit of extra time to find people that that extremely relevant to their needs.
From here, all you need is a beautifully crafted, personalized message to send to your leads, and you’re off to the races.