Sign in
Log inSign up

GitHub Contributions is a Vanity Metric

Alan Chavez's photo
Alan Chavez
·Sep 17, 2017·

6 min read

I'm currently the Head of Engineering at an early stage, pre-seed startup. We're about to hire our first and second full-time JavaScript Engineers, and we have yet to interview about 100+ applicants from all over the world (we're remote-friendly)

One senior developer that we'd like to hire, but can't afford right now, offered a piece of advice to use about discerning good candidates from the bad ones: Look at their GitHub contributions.

In his opinion, people with GitHub contributions show two desirable traits: confidence in their abilities as a programmer and a passion for the craft.

Though I know that it exists a strong correlation between open source contributions to passion for your work and confidence in your abilities as a developer, your GitHub contributions, the projects you have authored, the number of stars or the number of forks in your repositories are not a good metric to evaluate software candidates, at best, it is a vanity metric.

First, writing open source software has nothing to do with your confidence to show your work to people; many of the best open source contributors I know were very insecure about their abilities.

In my opinion, the primary driver behind open source contributions is the need to give back to the development community. None of the OSS contributors I know started writing open source software because they wanted to show off their skills. Furthermore, having private projects do not correlate with a lack of confidence in their abilities. For example, I maintain about a 10:1 ratio of closed source projects to open source projects. I legitimately enjoy coding as a craft, and I'm passionate about it. I'm the guy who reads Charles Babbage papers just for the heck of it. However, suppose a recruiter evaluated my abilities based on how empty my GitHub profile looks. I would likely seem like a junior developer with no experience under my belt. How many developers like myself do you think there are in the world? I'd bet the vast majority of developers in the world are in the same position as I. And that's fine.

I think the number of GitHub contributions is a metric just as fleeting as StackOverflow's reputation, YouTube subscribers, podcast downloads, Twitter followers, Facebook likes, or any other platform that people choose to put their content out for other people to consume.

Do individuals who spout this advice take the time to go through a GitHub profile, find a project, read it and evaluate a candidate? Think about it for a second: How are you going to understand the code for which you have no context? Let alone domain knowledge of the problem that the program is solving.

How will you objectively compare two developers with equally "excellent" GitHub profiles with relevant experience but completely different projects that solve entirely different problems with an altogether different approach? In my particular case, how am I supposed to evaluate a developer with Angular 2 contributions against a developer with Angular 1.5 contributions? Also, what happens if you check someone's code and ignore somebody else's. Not using the same methodology to evaluate all candidates could be considered discriminatory. Keep in mind your demographics: the vast majority of open source developers are white men. I'm not trying to make this political; it is a well-known fact.

What's the solution, then? I don't think there's a bullet-proof way to interview developers.

In my experience, a test project that mimics the type of work a developer would be doing, if hired, on a day-to-day basis. Upon project completion, I schedule a follow-up interview where I ask the candidate to add a feature to the test project.

By no means I'm attempting to say that our process is the best, I don't think there's a "best" way to interview developers, but I do believe there are many wrong ways to evaluate candidates. Looking at the GitHub profile is one of them.