Some of the most solid engineers, ones with track records of consistently delivering business value, have no public display of their work. Most companies don’t directly open source their primary code bases, leaving the work to be done behind closed doors. After working on these code bases, engineers don’t always have the time and inclination to work on public projects.
We’ve talked about this before
This is a topic people have been writing about for a while. Since it made its rounds again recently, I want to compile some of the literature and summarize why you shouldn’t require Open Source Software (OSS) contributions from your candidates.
In The Ethics of Unpaid Labor and the OSS Community, Ashe Dryden covers the ways OSS contributions are not distributed evenly among the entire population. Caretakers, often women and even more so Women of Color, don’t have extra time to work on OSS projects. These same groups often face harassment that discourages public contributions.
In Why GitHub is not your CV, James Coglan addresses the fact that GitHub isn’t even a curated collection of your work. That has certainly changed in the recent years, with profile READMEs and pinned repositories. Still, people use GitHub for collaboration and backups, and not necessarily in ways that can be evaluated in an interview.
In Why GitHub Won’t Help You With Hiring, Ben Frederickson breaks down how the social aspects of GitHub—followers, stars, contributions on their platform—are not indicative of programming skill. So even if you wanted to use GitHub as an evaluation criteria, you’d fail to find a good signal.
Can you use GitHub at all?
One suggestion I’ve seen brought up is to have candidates bring in work samples to talk through during the interview. Maybe a candidate wants to bring in their OSS code as a sample. Or, when answering a conceptual question (“what is a hard problem you worked on in the past?”), they want to use their OSS contributions as an answer. That seems fair. As long the OSS contribution isn’t a requirement, just an option.
I’ve used people’s GitHub profiles to see if there’s anything they’ve highlighted on their profile. That can be a nice icebreaker to get the candidate to talk about themselves. But that’s it. The GitHub profile is not part of the evaluation, just a way to get the candidate to feel comfortable. In particular, if the candidate doesn’t list their GitHub profile on their resume, or the GitHub profile is not well curated, I find another way to connect with the candidate.
Going back to the idea of looking for strengths, an active, well-curated GitHub profile can be a strength. But the lack of one should not be a weakness.
Should I have a public GitHub profile?
Personally, I don’t think it’s necessary. You’ll hear many stories of interviewers never actually looking at the GitHub profile. But, if for reasons other than interviewing, you have a GitHub profile, consider curating it. You never know if it leads to inbound opportunities!
Requiring Open Source Software contributions from candidates locks out people who lack the time, or the inclination, to software development outside work hours. This disproportionately affects minorities in tech, including women and older developers. If you do incorporate GitHub profiles into your hiring process, only do so as a way for candidates to show their strength. Make public contributions an option, not a requirement.