DEV Community

Why do employers check job candidates' GitHub profiles?

Ben Halpern on May 18, 2018

It seems to me like a pretty weak way to get an apples-to-apples impression of a candidate, but I’d love to hear others’ thoughts.

Collapse
 
maccabee profile image
Maccabee

My issue with it is that not everyone has free time to do a lot on GitHub. That's mostly why mine's full of half finished projects.

Collapse
 
david_j_eddy profile image
David J Eddy

Half completed person projects > nothing.

When I have to look it is more about 'what problem are you trying to solve' or 'are they following best practices for the ecosystem'.

I never discount 1/2 completed personal projects. They show character.

Collapse
 
david2999999 profile image
David Jiang

Squeeze every minute out of the day ⌚️⌚️⌚️

Collapse
 
evanoman profile image
Evan Oman

If a candidate is active on Github I like to check their profile to get a sense of what they are interested in and what their code looks like.

If a candidate is not active I don't hold it against them, I just ask different questions.

Collapse
 
asaaki profile image
Christoph Grabo

I do the same. Since I'm usually asked to do the tech part of the interview process, I think it is a nice and easy way to extend the picture of the candidate. But it is not a must-have.

I also like it, because I'm curious and love to get more inspiration. I try to keep this out from the evaluation though. I say "try", because once looked at the profile we're unconsciously biased anyway. But I hope I still gave every candidate an equal chance, no matter if and how much they have shown publicly.

Collapse
 
jennifer profile image
Jennifer Konikowski

It also could just tell you that Jean has more free time and John has none.

 
lfsmith profile image
LFSmith

It might also mean John doesn't publish what he writes.
Also upon further inspection of Jeans code we may find horrible spaghetti code.
Your period was way too much.

Thread Thread
 
jennifer profile image
Jennifer Konikowski

Or it means John has a family and obligations outside of work?

Collapse
 
krissiegel profile image
Kris Siegel

I like doing this but not as a requirement. Basically, if you have a project on GitHub, I can bring it up at your interview and ask you things like:

  • Why did you go with this arcitecture? Did it end up being ideal and could you have done it another way?

  • This code looks really interesting, can you explain it to me?

Especially when I interview senior developers it's helpful to know how well they can explain a concept to a stranger as that's a big part of their job.

But a GitHub account is never a requirement. It simply helps steer the interview.

 
jennifer profile image
Jennifer Konikowski

That is not true. Good developers use their working hours to get more work done. Not to work on OSS (unless their employer wants them to do that). If I finish my work early (which I regularly do), I pull tickets from the backlog. There is always more work to do.

Collapse
 
ciaran128 profile image
Ciaran McGhie

When I (freelance) work for a client that doesn't use github as their remote, I get no history. When (most of the time!) their repos are private, you can't see the code I've written. I'm not going to spend my free time writing extra code for free just for potential future clients/employers.

It's an awful way to get an impression of a candidate, unless your criteria is purely 'how much OSS do they contribute to?'.

Collapse
 
bryantee profile image
Bryan Swagerty

Not entirely true. You can choose to show private activity. This is useful for people seeing how often you are active, whether or not you participate in code reviews, etc.

Personally if I’m looking at a resume, I won’t discount people with non-super-active github profiles, but ones with it stand out.

Collapse
 
mahlongumbs profile image
Mahlon Gumbs

It's an awful way to get an impression of a candidate, unless your criteria is purely 'how much OSS do they contribute to?'.

I wholeheartedly agree.

Collapse
 
papaponmx profile image
Jaime Rios

Here is my personal opinion about why I'd appreciate some GitHub account and why I value organizations that do.

  1. A public repo shows initiative. Either you took the initiative to learn something or you built something and have the courage to share it. In the end, you did more than what is expected of you.

  2. Open source enriches us all. Think of Linux and the millions of servers deployed thanks to it.

  3. It shows initiative. It is a special kind of action. Most people only react to change. But to initiate it, is quite different.

Any organization that cares enough to take a look at my profile instead of the average white board test is the kind of people I'd like to collaborate with.

Collapse
 
jwrubel profile image
James Wrubel

I agree, it is a good way to determine a candidate's ability and interest in their work. It does a pretty good job of predicting if a candidate will be a good fit. The big problem is, if employers consider a lack of github to mean "this candidate does not show initiative", that's going to exclude candidates who for a variety of reasons may not be able to work on technical projects in their spare time. Those candidates are more likely to come from underrepresented groups like people of color or women, which will continue to cause our industry to lack diversity and equal opportunity.

Collapse
 
amalrik profile image
Amalrik Maia

Theres no hard evidence that underrepresented groups will lack a gh profile. Why do you say that?

Collapse
 
mahlongumbs profile image
Mahlon Gumbs

It doesn’t actually show initiative and I really wish people would stop making that up. It only shows a set of developers that like working on open source projects or contribute as part of their jobs. Nothing more. I absolutely love what I do and have been doing it for decades. I’m a work-a-holic and have been known to literally put in 90-100+ hours/week when needed (which is too often). However, when I sign off, I sign off. I spend time with my family. I bike. I binge Netflix. I travel. I fly planes. I go camping. I do ANYTHING but write more code.

Collapse
 
papaponmx profile image
Jaime Rios

Initiative: the ability to assess and initiate things independently.

Thread Thread
 
mahlongumbs profile image
Mahlon Gumbs
Collapse
 
josephmcasey profile image
Joseph Michael Casey • Edited

A well documented public portfolio is a much stronger representation of what a candidate can contribute than anything else because it is literally the closest thing you can get to the employee working for you. A public portfolio with contributions to OSS and personal projects shows so much more value than a 2 - 3 hour interview ever can.

The current interviewing process for software engineers heavily favors code golfers, and this attitude leads to an industry where startups, after the release of Pokemon Go, chase AR for investment dollars on unused product functionality. It results in tech giants that say things like 'Move Fast and Break Things'. An employer who values a GitHub portfolio looks like an employer who wants engineers deeply involved in their community that can also provide real world value.

 
jennifer profile image
Jennifer Konikowski

Yes? But the employer is paying the employee for their time and expects them to work on, well, WORK while they are at work. And, while you might not see a reason, I've worked at plenty of jobs where my employer did not want me working on OSS during the day. They were perfectly good jobs and I liked what I was doing.

And that project? That was a random code challenge that I decided to put up on my github. Not really OSS... just a garbage Rails project.

You are speaking from a place of IMMENSE privilege and I hope you can recognize that at some point. In the meantime, I am happy to not be working on a team with you.

Thread Thread
 
jennifer profile image
Jennifer Konikowski

Also, I'm a terrible example. I don't have kids and actually have 8 hours to work on some dumb project.

Collapse
 
carlymho profile image
Carly Ho 🌈

I know we don't really look at them that much unless the candidate specifically pointed to it for samples of their work. Sometimes I'll check and see if they have any cool stuff up there if they link it on their resume or portfolio site, but it's extremely non-required. (Esp since, if you work for a private company that uses source control, most of your interesting work is going to be in private repos anyway, haha.)

Collapse
 
ardennl profile image
Arden de Raaij

I don't think many employers see it as very, very important but IF you have side-projects and / or other work on Github it's a good indicator to see how structured someone works. In many interviews I did earlier this year, my Github was mentioned. Mostly in a positive way as I like working in a structured way. The actual code was barely mentioned

Collapse
 
c33s profile image
Julian

funny thing, a few weeks ago i wrote back a company who want me to lease their developer. i am really thinking about that, because it could really help to scale.

i received a CV file. a normal CV only makes me think "what should i do with that?". i don't care which school a person visited, if the person has a degree or not. there are really awesome delevopers out there which have no degree or not even a basic graduation and there are persons which have multiple academic titles but which are not able to do basic git branching (and are not willing to learn and do it)
a gitlab or github profile would helped me much more. beeing a developer myself i would like to see code of the person. read some discussions, read issues the person raised.

Collapse
 
erikthered profile image
Erik Nelson

I think it can be a useful signal when considered in conjunction with other things, but I don't put a ton of weight on it. As someone who's in their 30s now, has a house and had a kid within the last year - I know firsthand that finding time to program outside of work can be difficult/impossible.

Collapse
 
maccabee profile image
Maccabee

Try doing it with 2 kids. I wake up early and then get 1 maybe 2 hours to either go for a workout or do something for me.

 
lfsmith profile image
LFSmith

Periods rarely are fine but setting that aside you took one of many possible explanations for why one person might have more free time than another and portrayed it as vastly more likely than any other explanation.
Also, the assumption that better developers have more time during working hours is faulty, if I find myself with excess time at work I do one of three things.
1) find a way to add value to the project I'm working on either by testing or by finding ways to improve the Project.
2) Go off the clock and study up on new Technologies.
3) Do some small tasks for one of my other customers who always seem to have something lying around that needs a helping hand.

All this being said I have now been convinced that is time to clean up my Github and add a nice new project since the qualtiy of code I currently have on it is horrible stuff I wrote while watching cartoons.

Collapse
 
paulasantamaria profile image
Paula Santamaría

I guess they use it to evaluate your profile, but I seriously can't imagine some guy going through my repos or contributions and taking notes about them.
In my particular case, they won't get any real information from doing that. If you go check my github profile you'll see only the 5% of the code I'm working on, as I store most of my projects in other git platforms.

Collapse
 
yechielk profile image
Yechiel Kalmenson

Do they?

I always hear that, but in about a year of interviews I never once had an interviewer mention my GitHub profile... 🤔

Collapse
 
jvarness profile image
Jake Varness

I just like seeing everything that people are working on nowadays. I think it's fun to see what people work on in their spare time!

I don't use it to make hiring decisions though. I like hearing about side projects and how people have worked effectively with a team in the past.

Collapse
 
palnes profile image
Pål Nes • Edited

Github profiles are nice, but not consequential, to a hiring. If you are abusive on Github, that is definitely a red flag. Pretty much the same way as a racist Twitter account. A Github account, and subsequent scrutiny is valuable to us as employers because it reveals how this person solves intra-personal disputes. Now, that is not the only criteria, but a damn good peek at your qualities. I don't want to expose my trusted employees to a megalomaniac cunt.

Collapse
 
f1lt3r profile image
F1LT3R

GitHub can be really useful to get a sense of what someone is learning, what tech they have used, to see their code-style, etc. It can be a good talking point, E.g: What made you choose this framework? Why did you architect things this way?

Having a good GitHub profile is just one aspect of a candidate's ability, but it can be an important one.

I am usually involved in front-end/cross-functional candidate interviews. It depends what role you're hiring for, but as an example: if an engineer has been working in the front-end for 10+ years and can't walk me through a single code example from their GitHub profile, then that same information has to be teased out in other ways.

If you are going to interview for a job as a software engineer, it's reasonable for your prospective employer to want to see an example of your work. Candidates that can show lines of code they have written and demonstrate a good understanding of what they did, will obviously do better than candidates that show nothing.

Collapse
 
thebouv profile image
Anthony Bouvier

I do check.

But I don't rely on it.

It is just another conversation starter for me. It shows me what they might be tinkering with, where their non-work interests lie in the tech realm, what they might be studying.

I don't code review them or pick a part their pull requests to things. I don't use it to stalk them and see code quality.

Just one more thing to have in a conversational interview (so I can skip stupid things like whiteboard coding).

Collapse
 
theoutlander profile image
Nick Karnik

When available, it can demonstrate the candidate's passion for their craft.

It showcases which technologies they would choose on their own. How they write code in their free-time / side project(s) is also a good indicator of what to expect at work.

In addition, the frequency and time of their check-ins is also a good indicator of how they spend their time. This is also an indirect indicator of "culture fit". Do they code all the time? Do they code over the weekend? Do they have side-projects? Are their nights and weekends free?

It is one of the ways to spot a 10x developer.

Collapse
 
asaaki profile image
Christoph Grabo

To add another aspect: if there is a profile and has activities, it can also support me to steer the interview in specific directions. Maybe I see that they are interested or even experts in certain topics, which are relevant to our business and work, I can prepare questions and discussion starters beyond the regular ones.
But you can also include your interests and domain expertise in your application, and then the profile is not needed.

Collapse
 
pchinery profile image
Philip

I don't think it's a good way to finally decide on a candidate, but a good starting point early in the screening phase.

There is a class of developers that exaggerates their skills to hope to catch attention. We had this for a frontend position recently where the candidate said he worked senior React developer at a few different companies in the last years. We usually ask for some code samples in the process and accept, that code from former employers can't be shared, but offer to give us a GitHub link or other public contributions to get an impression. If we then receive a GitHub account with half-ready React todo apps, it does t really support the senior developer story. Usually we then hear something like "just hire me and you will see how good I am", which from our experience often is enough to reject a candidate.

On the other hand, if we receive a few of from high school and can look around and see what the developer is learned in the years, it's a good indication to invite them for an interview.

The real comparison between different applicants is very complex though and can't be performed based on GitHub contributions, without excluding talented people on the way, in my opinion.

Collapse
 
moopet profile image
Ben Sinclair

When I've interviewed candidates, it only comes up if they volunteer the information. I don't go searching for their usernames on github based on what I find by stalking them elsewhere.

So it's the candidate wanting to show their work. If they came to the interview and I had no idea what was on their github profile, they'd be justified in thinking we either weren't interested or had taken on too many candidates to allocate time for.

Like others have said, though, unless they have a pinned project which is evidently awful, nothing I see there is going to put me off, even if they only have a bunch of empty hello-world projects.

Collapse
 
elmuerte profile image
Michiel Hendriks • Edited

I am guilty. When I have to interview somebody I will check out their github activity, and other development activity (forum/blog posts, etc.).
If there is enough activity it will show more what kind of developer they are than their resume will. Especially when they have personal projects.
It will also give me discussion topics both sides are probably interested in. I can see the things they made, and can discuss why they made certain decisions. Get into their thought process.
Generally the work you do at a company is something you have to do, not something you want to do yourself. Work in your github is quite often something you did want to do yourself.

And while I'm checking out their activity I might also find interesting/cool software/techniques/etc. I did not know about.

Collapse
 
usamaashraf profile image
Usama Ashraf • Edited

I think it's not so much about reading the code itself, but how it changed over time. How you refactored your way out of a mess, radically changed a particular feature or fixed a bug without causing ripples.
So even if your code looks shitty, someone realizing that it incrementally became less shitty as they move up the commit log can be pretty useful, IMO. It tells them about the dev's ability to adapt to change while maintaining a certain harmony in the code, sticking to patterns, standards etc.

Plus, people also like to look at how good your tests are; as in, do they logically cover a significant part of the app's functionality.

Collapse
 
aswathm78 profile image
Aswath KNM

DHH, the creator of Ruby on rails, once said that they mostly hire people based of their GitHub commit to the Ruby or rails projects.

It helps him to understand the candidate's level of commitment, coding practices and many other things needed to work in his company.

I guess that's the main reason.

To understand the mindset of a candidate, it's not how often they push .

But how well they code and how well they mingle with the team and follow best practices.

Collapse
 
mmarinez20 profile image
Manuel Mariñez

Haven't been in an interview from the employers side myself... not even in one in which I needed my Github in the first place, BUT, I think it's to verify how good are you working with other people, how good are you at communicating issues or possible solutions or even if you apply good practices into your personal projects. There are plenty of things that are reflected in a workspace.

Collapse
 
gmartigny profile image
Guillaume Martigny

I would disagree with you on this one.
Company have to know who there're interviewing or employing. As Github is a public space, it's ok to check what your profile looks like.
I feel the same for Facebook. If your profile is a mess, I don't want to work with you. (or at least, hide it behind a nickname)

Collapse
 
jwrubel profile image
James Wrubel

Checking a Github profile is one way to see code samples from a prospective employee. It's also frequently used as a proxy for asking about candidate side projects. An active github profile shows that candidates code in their spare time. I did a talk on this very question recently, and how checking Github profiles is the same as asking about side projects (and why both of them are discriminatory against underepresented groups in tech) beautiful.ai/deck/-LBBNBKF5JwsC5q8...

Collapse
 
david_j_eddy profile image
David J Eddy

It is indeed weak, but organizations need a way to justify expense. Look back to the 80s and 90s; when two candidates applied for the same role the one with college degree go it. Even if the non-degree person had experience.

GitHub is a way for organizations to see you actually do something; other than BS your way through the interview process (which is also broken, but that's another topic).

Collapse
 
dayvidwhy profile image
David Young

For me it helps connect the part of their resume that lists "technologies I've worked with" or "languages I know" part a bit more practically. I still take it with a grain of salt, but it does help when your dealing with a large volume of resumes.

For example if they list react as one of their skills and I see any react project, and I mean you could make a few changes to a generic create-react-app, I sort of know that at least this candidate does indeed know something about it and it gives us something to talk about in the interview.

Again, massive grain of salt, and if they don't have any projects it just alters the line of questioning a bit. Also larger projects they've worked on could very well be in private repos, but it doesn't take long to skim through a github profile.

Disclaimer that I'm biased towards this type of checking, because I had a built up github profile before I started applying for jobs.

Collapse
 
svemaraju profile image
Srikanth

This article blog.jcoglan.com/2013/11/15/why-gi... makes some good points why github should not be a standard in job recruiting.

Collapse
 
lepinekong profile image
lepinekong

They even look at social networks so all the more for Github :)

Collapse
 
ben profile image
Ben Halpern

That’s a good counterpoint 👌

Collapse
 
lluismf profile image
Lluís Josep Martínez

Much better that taking for granted the projects/achievements/solutions the interviewee says it has done.