If you’re a developer or involved in hiring at a startup, you’re almost certainly using Github. Over the past couple of years, the popular code sharing platform has become the unofficial resumé of developers. But recently, the practice of requesting Github profiles as a hiring filter has come under fire in the startup community.
Github hosts source code using the git version control system. It’s free for public, open source projects and paid for private repositories. Along with the normal git features, Github also adds social features like issue tracking, Twitter-like following, and activity feeds.
While Github makes code social, it doesn’t inherently make developers more social. This is where the hiring controversy begins. In essence, Github creates a bigger cafeteria for social coders to be social, but don’t expect to find the more introverted developers through Github. And don’t expect to easily find women or other tech minorities since the vast majority of the most prolific Github contributors are white males.
So why do startups use Github to pre-filter technical candidates?
The short answer is that hiring developers is notoriously difficult. Technical, communication, and cultural skills are all key variables in the process. Finding the right balance is more art than science, and when time is of the essence, technical founders turn to what they know best: code reviews.
The best candidates come through referrals from friends or employees who have previously worked with the candidate at another job. The next best candidates come from chance meetings at conferences, meet ups, or other in-person gatherings. Just like in romantic dating, an in-person meeting can quickly sum up the candidate’s ability to communicate and interact with others. This establishes “culture fit,” but the follow-up is often to refer back to the candidate’s Github account if it wasn’t completely clear if he or she is strong enough to proceed to a more formal interview.
A quick look at a developer’s Github account can reveal if the person is an active open source contributor. However, using open source activity as a hiring indicator will most likely filter out better candidates for a startup by prematurely narrowing the search.
So how should Github be used to hire developers?
Let’s start with The Don’ts:
1. Don’t look at a candidate’s Github account until after he or she has passed some other hiring threshold: referral, cultural fit, etc.
2. Don’t browse a candidate’s public repositories without some additional context; developers use public repos for many reasons, most of which have nothing to do with officially releasing open source software.
3. Don’t pay any attention to a candidates followers count; it’s a useless metric.
Doing any of the don’ts is not only a waste of time, it will prematurely bias the hiring process to a narrower group of candidates. Startups thrive on diversity within the bounds of common goals, experience, and cultural fit. Don’t take diversity for granted.
1. Ask for a link to a specific repo on Github that the candidate has authored; only do this after pre-qualifying the candidate through some other means.
2. Open source as much of your startup’s code as you can justify; contributing value to the open source community is a great way to attract potential candidates.
3. Pay attention to any developers that submit pull requests to your open source projects; this pre-qualifies the candidate as being interested in your startup and likely having requisite technical skills.
4. Follow open source projects related to your startup and reach out to the contributors; if they like your startup, they might be interested in working with you or referring someone.
The one other “do” that’s worth mentioning is to take a look at a candidate’s contributions to other projects. It’s the author’s experience that every good developer runs into bugs with open source software, and pretty much every startup uses some amount of open source code. Contributing a bug fix is a great indicator of ability to understand other people’s code and solve problems. Unfortunately, Github currently limits viewing contributions to the past month.
In conclusion, don’t use Github as a technical resumé. Use it as it was intended: a place to contribute and socialize around open source code. The best way to use Github to hire people is to write open source code that other developers want to use and contribute to.
Special thanks to Ashe Dryden and her article on the ethics of the open source community.