"OSS as a hiring filter biases your selection process toward white men"... not sure what to say.
But I do find it funny that they don't think that Github should be used as a resumé but their "conferencing", tweets, books about diversifying and podcasts should do.
Talkers or Makers?
I write OSS on my free time because I feel like other alternatives might not be good enough. I spend a couple of hours in the morning, weekends and etc. It's hard and time consuming. I can take two days if just figuring out what the selector should be called or argument names.
Right now I am getting paid for OSS, but I even spend my free time on it because I'd like to make sure it comes out good.
It's very slow and time consuming, and sometimes keeps me up at night, but I LIKE IT. And I like acknowledgment to it.
These sorta articles invalidate what I make just because I FEEL like making them. Not sure what to feel about that.
I have friends who make stuff to Go-lang because they want to learn the language and make stuff that doesn't exist. These articles invalidates their passion.
And saying bullshit like LGBT or other genders are actively being excluded... well it makes me hard to take you seriously. I'm not white, and I am part of LGBT.
> These sorta articles invalidate what I make just because I FEEL like making them. Not sure what to feel about that.
Maybe it's because I'm getting old, but I've learned something... stop caring what others are saying and doing. If you feel like making shit, then make it.
The article does not say that conference talks, tweets, books, etc. should be used for hiring decisions and only GitHub should not. It says (right there at the end), that hiring is hard and any shortcut to try and get around that fact is wrong. It just so happens that "don't send us your resume, tell us your GitHub username" just happens to be the shortcut of the moment.
Also, I'd challenge you to find where the article says or even implies that you shouldn't be making stuff because you FEEL like it. Quite the opposite, in fact. You should be making stuff because you feel like it and not because you have some expectation of getting a better offer or being able to show off your GitHub profile at your next interview.
As for the white, male bias...not sure what to tell you. It's real. The statistics don't lie. I'm glad that you have had success as a non-white member of the LGBT community, but as the saying goes: the plural of "anecdote" is not "data".
> The article does not say that conference talks, tweets, books, etc. should be used for hiring decisions and only GitHub should not. It says (right there at the end), that hiring is hard and any shortcut to try and get around that fact is wrong. It just so happens that "don't send us your resume, tell us your GitHub username" just happens to be the shortcut of the moment.
Actually, Ashe has that on the Hire Me Page.
>As for the white, male bias...not sure what to tell you. It's real. The statistics don't lie. I'm glad that you have had success as a non-white member of the LGBT community, but as the saying goes: the plural of anecdote is not data.
I understand this is a fact, but how this can be used against Github as a resumé or against OSS on your free time, I have a hard time seeing that. It comes off as incredibly stupid.
> I understand this is a fact, but how this can be used against Github as a resumé or against OSS on your free time, I have a hard time seeing that. It comes off as incredibly stupid.
I really don't think anyone is saying not to do OSS on your free time. That there is a greater lack of diversity in OSS than in software engineering as a profession suggests that whatever it is that keeps minorities out of software engineering might be amplified in the OSS community, but it is not proof of this.
As for being an argument against using GitHub for hiring decisions, I'd pose you a scenario...two recent college grads are looking for their first job. One had parents who could pay for college, so in between rounds of beer pong and slacking off from class, this student found time to write a handful of OSS libraries and posted them to GitHub. The other was raised by a single parent in poverty, and is now working two part time jobs to fund their education. Between work, this person studies hard, does well in class, but has no time left to work on any open source side projects.
Which of these two students will be the better asset for your startup? Which of these two students will reply to your job post that says "don't send us a resumé, just link us to your GitHub profile"? Statistically speaking, which of these two students is more likely to be a racial/ethnic minority?
Statistically speaking, which one has spent more time coding? OSS is a lot of work - the suggestion that a rich slacker is your typical OSS contributor is really stretching my imagine.
If you are working with the same technology stack we work you will fix bugs and implement new features in your PAID time, not in your free time.
This is what we are looking for in your github profile. If you don't have it, may be you are fit for the work, but clearly you are not playing the same game yet.
I use Symfony at work. I would love to contribute some of the patches and helpers I have written to Symfony, or release them as an independent bundle, but (a) I'm the only programmer on the project so I don't really have time, and (b) my company doesn't really do OSS, so I would need to explain all this to our legal department before I could get authorization to release it.
It doesn't sit well with me that Ashe is trivializing the time commitment with 'oh they're just white dudes', when it's usually more a case of 'they love what they do and they make time for it'. If writing open source gives you the competitive edge in the market then that's great no-one should feel guilty about edging others out of higher profile work because they represent their skills better at recruitment. The drivers aren't geared to social wedging (seriously who even has time for that crap?), I think open contribution is more about skill, creativity and passion than anything else. Race, minorities, gender, orientation has ZERO to do with anything, stats are only corrolary. Where are the stats that OSS engagement is becoming a trending hire filter?
It kind of reads like a no-child-left-behind or no-child-gets-ahead (can't remember which) proponent piece. We all have busy lives and saying its a race/gender etc. issue is way off the mark. I wish that whole section was left out as it just confuses the pretty simple point I think she was trying to make that open source engagement should not be an authoritative filter.
I honestly don't think anyone is trivializing anyone's commitment. Rather, I think what Ashe and James are pointing out is that the opportunity to contribute to OSS is not distributed equally between the sexes and races. Who's to say that more minorities wouldn't contribute to OSS if they had the time, access, and resources?
Or, to take it to an extreme, why is Silicon Valley in California and not Botswana? Do you believe that the people of Botswana are inherently less intelligent? less motivated? less capable?
Or is it their environment which is working against them? Jared Diamond has probably one of the most interesting takes on how these sorts of inequities can arise on a regional level (Germs, Guns, and Steel: http://www.amazon.com/Guns-Germs-Steel-Fates-Societies/dp/03...), but is it such a stretch to imagine that the same sorts of inequities don't exist at smaller scales as well?
> I understand this is a fact, but how this can be used against Github as a resumé or against OSS on your free time, I have a hard time seeing that. It comes off as incredibly stupid.
The OP is arguing that if a company values or gives extra weight to candidates with OSS and/or Github contributions, they are by definition skewing their candidate selections towards white men. The main criticism is that the desire for easier metrics to make higher decisions has built in bias problems that will exclude whole groups of people.
There's a difference between a potential candidate putting their Github profile on their resume and having hiring managers filter out all candidates who do not have a profile.
I think this is the key question. Using the absence of a GitHub profile to dismiss candidates is one thing, but using the presence of a strong GitHub as a positive is a different story.
As for the white, male bias...not sure what to tell you. It's real. The statistics don't lie. I'm glad that you have had success as a non-white member of the LGBT community, but as the saying goes: the plural of "anecdote" is not "data".
The thing is, something can be both a filter against 'underrepresented groups' AND a valid criterion for hiring.
Requiring a CS degree probably biases in favor of white and asian males and against black females. It is also a very valid filter for hiring programmers (pace the self-taught).
Not much can be done about this fact except for increasing the pipeline of underrepresented groups into CS degrees, recreational programming, OSS participation, and so forth.
The point is, the lack of diversity in the Open Source community is greater than the lack of diversity in CS education programs. You'd be less likely to hire a black female if you said "send us your GitHub profile" than if you said "show me your CS degree".
Many different factors need to be used as part of a full portfolio. Look at their resume, their github (if any), their formal education and self education, their work projects, and so forth.
Why are females with CS degrees less likely to have Github pages than males with CS degrees? Is it because of the testosterone which tends to make males show off more than females? If not that, then what?
Marginalized people in tech - women, people of color, people with disabilities, LGBTQ people, and others - have less free time for a few major reasons: dependent care, domestic work and errands, and pay inequity.
Women are far more likely to be a primary caregiver of not only children, but other ailing and aging relatives. 59-75% of caregivers are women.1
52% of women caregivers with incomes at or below of the national median of $35k spend 20+ hours each week providing care. The largest racial demographics in this group are black and hispanic2.
Women perform more unpaid labor (most visible in domestics and child care) than men. On childcare alone, mothers spend more than twice as much time per day as fathers do. On average, working fathers spend only 10min more per day on child care when they are not working, whereas working mothers spend nearly twice as much when not working3.
Due to additional pay inequity contributing to less access to paid childcare, women of color perform far more child care than white women.
Those with medical conditions requiring that they regularly visit medical facilities or perform other health-related activities such as getting additional sleep, regularly exercising, doing physical therapy, being away from backlit screens, not sitting in a chair for an extended period of time, resting their hands, etc are all affected by what becomes an extended workday.
Those with a longer commute have less free time. Those who make less money can't afford the same housing costs as those that make more and are able to live in a city, so they are negatively impacted here again.
Women earn 76-89% of men's wages. 6
Women of color earn as little as 55% of white men's wages. 7
I know many women that either don't contribute to OSS because they've been dismissed for being women - being too pretty, not pretty enough, being forced to prove their competence more than their male counterparts because they're women. I've talked to women who use gender-ambiguous github names and don't post a picture of themselves as their avatar because of how quickly this happens. In addition, the sexual harassment, slurs, and other derogatory language that are used directly or indirectly at these groups of people causes many to not want to participate at all.
The cited stats are from the general population, not specifically women with CS degrees. I'm curious to see if the same stats hold up in this smaller population.
> "OSS as a hiring filter biases your selection process toward white men"... not sure what to say.
OSS as a hiring filter biases your selection process toward people who are either paid to do it at their current job, or who have few enough prior commitments in the rest of their life to be able to afford to do it outside of work.
I'm not sure whether it biases towards white men or not, but I'm pretty sure it biases towards younger people and against people who are in enterprisey companies (or who work on private contracts).
As a condition of my employment, I had to sign a contract with my former employer that basically said since I was a software engineer with them, they owned all the software I wrote, even if I wrote it outside of my work hours. This obviously prevented me from working on any OSS.
> As a condition of my employment, I had to sign a contract with my former employer that basically said since I was a software engineer with them, they owned all the software I wrote, even if I wrote it outside of my work hours.
I had an employer spring an intellectual property agreement just like that on me. I'd been working there for six months already, and had to threaten to walk out unless they specifically put in an exception for open source work in mine.
Ashe Dryden's original post has merit, I'm not contesting that. James' post however, is wrong on so many levels.
It's worth noting that James is a UK based developer. Most of his points may be completely valid in the US but they are completely at odds with the UK climate. I've worked with an inordinate amount of tech companies in the UK and consulted with many more and I've yet to come across any that hire based primarily on the merits of a candidates github repo.
In fact, I'd argue his understanding of the request for a candidates github URL is completely wrong. One of my first requests when speaking to a potential candidate is for their github/bitbucket profile so I can see some actual code examples. I know that it's rare to find a true indication of someones ability from just their github contributions but for example, it can help me discern whether a ruby candidate adheres to ruby best practices or not. A small example of a minor indicator that someone might be a good fit for our company.
A man with significantly more experience in the industry than me once put it better than I ever could:
The more information I can get, the easier it becomes for me to make a decision, and to feel comfortable in it. And the best sort of information to give me is to show me what you can make, whether that's code for a backend position, or interesting design/UI for a front end position. It also gives us another thing to talk about during interview; and more opportunity to ask about design decisions and rationale.
Some of the best people I've ever sourced didn't have any publicly accessible code but if they had, I would have found them a hell of a lot quicker.
There are two ways to read this: (1) as a marker; (2) as a filter. Would be interesting to hear your thoughts on the interplay. My guess is that there is some game theory on signalling at play on both sides here.
It's genuinely very straightforward. If you don't have much of an online presence (github, twitter, blog, etc) then the only way I'm likely to find you is if a mutual contact tells me about you. Now, referrals are one of the best sources of excellent people and I'm not knocking that.
If you're constantly tweeting/blogging good quality content about an area of technology that is relevant to my business then of course I'm going to take notice. That, however, doesn't necessarily make you a better candidate by default, it just means you were easier to find.
'I know that it's rare to find a true indication of someones ability from just their github contributions but for example, it can help me discern whether a ruby candidate adheres to ruby best practices or not.'
The problem with this is that you can't really make a logical decision when the code (on Github/bitbucket) is removed from its context. Maybe none of the code follows best practice, but there is a compelling reason why this is so. If your decision on whether to pursue a candidate or not does not include a discussion with the candidate about their available code, you are missing an integral piece of the puzzle.
If your decision on whether to pursue a candidate or not does not include a discussion with the candidate about their available code, you are missing an integral piece of the puzzle.
You are absolutely right. I can honestly only ever think of one circumstance where I dismissed someone based exclusively on what I saw in their github repo. I felt guilty so I phoned them a week later to discuss my thoughts and it turns out my suspicions were correct but that was categorically an edge case.
"If you want to find out whether someone’s worth hiring as a software engineer, their code is of very limited value compared to talking to them, discussing design and architecture, previous engineering constraints they’ve faced, and what they’re like at solving problems"
I have a hard time thinking of a better way to see how good someone is at all of those those thing than to look at code they've written in the past.
Also, the title of the article is "Why GitHub is not your CV" yet all it talks about is how it can't replace an interview. Which I don't think many people advocate.
Yes, all the complaints about how you can't tell a story with your github profile seems to completely ignore gh-pages, a phenomenal service that does let you tell a story.
Maybe your github profile isn't a good portfolio by default, but it's an excellent service for creating your portfolio. On top of that, even a poor github profile provides more signal than most CVs I've read.
The point (imho) isn't that literally nothing on github can be a good hiring indicator. It's that people are treating github as if, by itself, it is an adequate way to assess candidates and decide who to interview. Maybe if you make a page like you're suggesting, then you can link to that page, but then github is more or less just a host.
Well, I can certainly accept that it's possible to overweight github as a hiring indicator, however that's not been my experience from either side of the interview, so I strongly suspect that if there's an optimum amount of attention to pay to services like github, most recruitment programs are on the 'too little' side rather than the 'too much'.
Yeah, while I agree with a lot in the article, I also agree with your generalization. Most companies are still looking for the boring "CS degree + 2 years experience, HR doesn't know what github is".
But there are also a lot of "hot" companies, of the sort that are talked about a lot on HN, that are pushing github as the end all be all.
The real point isn't about what the average company is doing, it's about which attitudes are sensible.
(Bias: I got my first job as a developer based on a combination of a non-technical friend's contacts and my github repos looking acceptable. I was three years out of grad school in the humanities at the time).
Not really. Plenty of people have a site like http://kybernetikos.github.io/ which just tells a story about some of the projects they've got on github.
I just threw that together quickly a while back and haven't updated it, but github whould make a fantastic site for a portfolio.
When people are referring to using Github as your CV, they aren't talking about Github pages. They are talking about the repositories and the code. Github pages are another thing entirely, and not what is being discussed here.
> but github [pages] whould make a fantastic site for a portfolio.
No one would argue that github pages would make for an easy to use hosting provider for a portfolio site. No one is suggesting that.
> When people are referring to using Github as your CV, they aren't talking about Github pages.
That's actually my point. They should be, and maybe you didn't read the comment I was replying to, but that is in fact exactly what we were talking about - "Unless you have your CV on github.."
Of course having a mess of github project pages is a bad portfolio, but each of the individual projects in your portfolio makes sense as a github project, and the fact that they give you a pleasant <username>.github.io site to tie it all together makes it one of the best ways to host your portfolio.
It makes perfect sense to have github projects as your portfolio parts and turn it into the 'narrative' so beloved of the original author with a github pages site.
So then you are still missing the point. And so was the original comment you replied to. When people are talking about github as your CV, they don't care that you happened to host your website on ghpages. It's using the code repos themselves. Where you host your website is beside the point.
> It makes perfect sense to have github projects as your portfolio parts and turn it into the 'narrative' so beloved of the original author with a github pages site.
Yes. But again, that's not what's being discussed. You are in fact agreeing with the foundation of the idea.
Basically: GH Pages are merely a way to host your own personal website. The fact that it's also on GH isn't special in anyway, and you could achieve the same thing self-hosting. Remove that from the equation, and merely having GH repos is the issue.
People are saying you need that 'narrative.' How you achieve that is up to you, but relying just on the default GH repos doesn't help.
First thing: The white/black men discrimination issue seems totally out of place, almost ridiculous!
As for the main argument, I think it's flawed. Github (or any other online repo) is an important asset and Open Source contributions matters. Especially if you don't have prior job experience. It's a very good way to show that you can actually write code and you will be hands on from the first week, or day, or hour.
I think this article needs to be split in two because it seems to be conflating 2 opinions.
I'm not sure I really understand what the author is trying to say. Is it that OSS encourages a culture of being exploited and that GitHub is inadvertently pushing that culture? Or is it that recruiters don't know how to assess the code they see and this is somehow GitHub's fault? Or is it that working on code on your spare time is really a bad thing? Or maybe it's that only white men create GitHub accounts.
> the demographic make-up of open source contributors is even more skewed toward white men than the software industry is, which is saying something
What?
> You just get what other people think is useful. Aside from which, GitHub displays a lot of useless stats about how many followers you have, and some completely psychologically manipulative stats about how often you commit and how many days it is since you had a day off.
You get social proof, some measure of conscientiousness, and a crowd-sourced filter. All on one page. That sounds great. I don't see the problem.
Companies want to hire influential workers. It's relevant. So is putting in the work.
And products which people find useful are vastly superior to those that the author finds well engineered. I'm guessing many company owners will share that view.
What does it say? That it's probably not a good measure of skill in any sense worth measuring, unless you think that 98.5% of the programmers worth hiring are men.
That it's probably not a good measure of skill in any sense worth measuring, unless you think that 98.5% of the programmers worth hiring are men.
I don't see how those two points are related. A measure can be good or bad independent of who you choose to measure by it.
Github(not necessarily just having an account but actually looking at what they have done) is a good measure of skill because it allows you to see the person's work output. You know exactly what they contributed to a project and what type of work they are interested in and are familiar with.
Now just because it is a good measurement of skill doesn't mean that it is a good hiring filter. The two are similar but not the same thing. A good hiring filter filters for skill but doesn't filter for other attributes like race and gender. It is kind of like saying measuring how much weight a person can lift is a bad measure for determining a person's strength because we only measured white guys. It is a good measure of strength, just misapplied if you are trying to find the world's strongest person.
> A good hiring filter filters for skill but doesn't filter for other attributes like race and gender.
It's a trade-off. You want to see as many people meeting your criteria as you can, but don't want false positives. A github profile might have many false negatives (because of the white man skew), but that's a price a company might be willing to pay, if they get enough applicants anyway.
True I more meant an ideal hiring filter not merely a good one. Biased hiring filters can get you in trouble in the US, especially if they are known to be biased. That is one of the reasons general IQ tests should be avoided here, they are considered biased.
I took it as implicit that a measure of skill is something that should work for most people. If you just mean it can be an indicator of skill (that is, something that tells you positively that some people have skill, but doesn't tell you anything about most people) we have no disagreement, we just were using words differently.
It's a system which disproportionately rewards the lucky few whose employers allow them to either open source their work, or contribute to open source projects... or the people who spend their free time coding. I know plenty of folk who are damn good at their job but like to spend their free time on other, unrelated hobbies.
I'm actually lucky enough to fall into the former category, but I feel that if you only hire people with a respectable presence on github, you're disregarding a large number of people for something beyond their control that doesn't accurately reflect their ability.
>you're disregarding a large number of people for something beyond their control
What you spend your free time on is not beyond your control (at least when you're a software dev and presumably paid enough to actually have free time). And you might decide to spend it on other, unrelated hobbies. That's cool, but you should be aware that unless you can present that hobby as interesting, unless you can sell it as something that helps you grow, you are making yourself look less good that someone doing the same kind of work, and then doing OSS in their free time.
A company is not going to disregard you for not having a respectable github presence if no other candidates have a github presence either. But if there's a clear disparity, why should they take an extra risk by hiring you, rather than hire the person that can show them their actual contributions?
"at least when you're a software dev and presumably paid enough to actually have free time"
...or you know, don't have family obligations.
I do agree to some extent with what you're saying, but as others have stated, it should be one of many factors taken into consideration, and it depends on the culture the company is trying to foster.
I personally have looked at github profiles of people I'm interviewing, if they chose to share it with me.
Choosing a company to work for is not beyond one's control. It is possible to specifically look for a job that allows contributing to open-source in some way, or, in other words, to blacklist those who explicitly forbids that. I've done this in both two cases I was on a job market and still enjoy this decision.
Maybe I see the world through rose-colored glasses, but I don't see why sane employer would like to forbid contributing to open-source project if e.g. this project is used for work and has some bug. And there are always bugs or inconveniences if you use something heavily. For some industries it is even hard for a developer not to be on Github, because a lot of software she uses is on github, and in a lot of cases the best way to fix the issue she's working on is to contribute to open-source project that caused this issue, instead of e.g. working around it by some hack.
I agree that discarding people without respectable github presence is bad (unless you're looking for a very specific kind of people, e.g. for marketing purposes). But I can see how not being on Github at all (even with minimal presence) could be a bad sign in some cases. Of course, industries are very different and this shouldn't be a general rule.
The problem is you only get what you measure. Then you rank only/disproportionately by those narrow measurements. It leads to "gaming" of a system. To min-maxing. (To use an old RPG term.) See Congress and Wall Street for powerful examples of how "gamed" systems end up hurting the rest of us in tangible ways.
I've seen it lots on GitHub, and the problem seems to be growing. The guy that parachutes into a project -- one with money-impacting code already deployed on 1000's of real world systems used by ordinary people -- submits a pull request where he's modified every single file in the project, making only superficial changes to formatting and whitespace, and probably the result of an automated tool, and most importantly DOES NOT THOROUGHLY TEST IT beforehand... yet, from GitHub's perspective he's now (a) an accepted code contributor, (b) modified lots of files -- prolific! -- and (c) has a high count of lines added/removed -- IMPACTFUL! -- and (d) very very busy beaver "working" on lots of projects. "Gosh, we want him!"
But does he/she understand threading, leaks, races, parallelization, good architecture, good documentation, automation, reproducability, security, scalability, strategy, pacing, production support, risk mitigation, algorithmic complexity, tradeoffs, market priorities, DRY, YAGNI, edge cases, BATNAs, etc etc? Well... er... maybe not so much. But his/her eyes just light right up when you mention you have a foosball table and a keg in your cubicle-or-overturned-door "office"!
Yeah, but tell that to pretty much everyone who is hiring devs nowadays. Everything is like, "Send us your Github link. Peace out." Uhhh, but I mostly commit to private repos…?
The Beats were a genuine movement of talented, hard working literary types. They were hip. They were cool. They were who everyone wanted to be, so people started emulating their dress, their mannerisms, their speach.
But they were not driven by the same passion. Their motivation was different.
Ginsberg said of the Beatniks: "If beatniks and not illuminated Beat poets overrun this country, they will have been created not by Kerouac but by industries of mass communication which continue to brainwash man."
If we let companies continue to use GitHub as a hiring tool, the OSS community will gradually become overrun by people attempting to achieve the same success as the OSS pioneers by mimicking their actions...but lacking their same motivation.
It's hard for me to say this. I like GitHub. I like Open Source. I am proud of what little I have managed to contribute to that community, and I think it is to my advantage if a company considers my GitHub profile when making a hiring decision. That said...I'd rather give up that advantage in exchange for keeping GitHub as an open community to share source, instead of a cauldron for the latest start up founders to pluck their next engineering hire from.
This is always what happens, and it's usually a good thing.
The people ahead of the curve have to be more motivated, but if we get more people sharing, more eyes to find and fix bugs, more people from other walks of life that understand a bit more of the hacker mentality, more acceptance of sharing code as a normal part of life, then the world is a better place.
Yes, it's a shame that not everyone who plays the piano has the dedication and vision of Rachmaninov, or that everyone who paints is Picasso, but I think the world is a better place for amateurs and dilettantes. Sure, we'd perhaps have better art if it were restricted to those who must, but we have a better society because those who are moderately interested can.
It's not a good thing. Submitting proper bug reports is hard, and contributing to an existing project without making more work for others can be hard as well.
The best software does the most with the least amount of code while still being easy to read--and when a library or app gets there, it's time to stop.
The problem with a hypothetical swarm of people trying to pad their Githubs (the same way premeds pad their CVs, for example) is that they'll flood otherwise stable projects with garbage, or start rewrites for no other reason than they think they can do it better. A lot of good projects are going to get fucked up this way.
Right. If the people combing through GitHub profiles are not, themselves, technically proficient (i.e. recruiters) then we will find people being rewarded for quantity over quality. Taken to an extreme, this can lead to communities that become, in effect, echo chambers where developers are re-re-reinventing the wheel to pad out their GitHub profiles instead of endeavoring to create something interesting and new.
I disagree with this article completely. I'm a woman and a software developer and I think my Github is very valuable as a portfolio to me. Before I used Github, if I wanted some of my code to get shown off, I would make a blog post about it and call out specific chunks while linking to a ZIP of the whole thing. If a potential employer wanted to see samples of my code, they'd have to find my blog and dig through its archives. Now, they just find my Github. The author acts as though when an employer asks for someone's Github, it's going to be the main or only component to determine whether to hire or not. In interviews where I've been the interviewer, we've used it as a filter to determine if a candidate cares enough to code on their own, if they contribute to open source projects, what their coding style is like, what languages they gravitate to writing in, and just as a general personality guideline. It's cool to see the kind of stuff a person codes in their personal account, whether it's joke repos that give a glimpse at the person's personality and sense of humor, or actual serious projects.
Github can be gender/race/age/orientation agnostic. It's just a portfolio of Code.
Some people, who don't do that, but instead tweet, podcast, conferences dislike it.
You either missed the point, or do not think it's a problem.
> determine if a candidate cares enough to code on their own
Which he is arguing that you are not a bad developer for doing other things outside of work. The vast majority of people need to not code to regenerate.
I can use myself as anecdotal evidence: I'm the goto guy when it's particular difficult to solve a bug, when it's a new framework, or when the teams are unsure how to solve a problem. I love coding, I constantly get compliments for my code and solutions. I do rarely code outside of my work. I used to before I got a "real" job after my degree, but now I (almost) only code at work. I usually think about solutions and architectures outside of work though, and I write a lot of pseudo code on paper if I get an idea for an algorithm - but I do not make binaries or contribute to OOS or a public Github repository. I have a spouse, children, friends, and hobbies that simply doesn't get as much of my time as they deserve.
I would never pass the bar at a startup that's looking for the typical startup stereotype developer. I'm 100% certain that I make more business sense to hire than all of your average workoholic startup developer, but I would never be considered. I have seen so many developers with great personality and glowing Github repo fail so miserably because they have poor work ethics and are unable to do "the boring stuff" that needs to be done in a business.
I can make a sensible plan, estimates that aren't completely bonkers, and I can tell when we're no longer on track to meet the deadline the same week it starts to slip. If I make a promise I keep it, or let you know that I'm unable to. I can also work completely agile, and not some "agile-but" that is so prevalent in the industry. In short there is soooo much that you need to consider when hiring. Screening based on a Github account is excluding developers that would be just the guy/gal you're looking for.
While I understand that many people enjoy writing code and do so for fun, there are a large number of fantastic engineers that don't (myself included). Just as I wouldn't give someone preference for a robust profile, I'm not going to penalize someone for lack thereof. There is only so much time in the day and if they can do ten hours worth of work in eight hours and choose to spend their off time with their family, friends, or hobbies, good for them. Knowing how to decompress and enjoy both work and life is just as valuable to me as crafting solutions to engineering problems.
If you are working with the same technology stack we work and are not finding bugs or implementing new features you are not playing in the same league.
We don't contribute to FOSS because we are hobbyists or good Samaritans, we do it because we need the features or fixes. We do it because in the long term it is cheaper and more efficient than maintaining a fork or developing a closed source component.
Many software developers don't work with FOSS technology at work. I work in embedded systems and much of the library code I work with has been provided by manufacturers of the devices I'm using. I do find bugs in it and report fixes to the library developer, but they often have strange licensing and don't use github (or even public version control) so this work doesn't end up visibly attributed to me in public.
This doesn't mean that the people working in non-web industries "are not playing in the same league" with respect to skill, it just means that they don't have a huge public representation of the work they do.
> While I understand that many people enjoy writing code and do so for fun, there are a large number of fantastic engineers that don't (myself included).
Sure, but there aren't many people who hate coding but still do it (in significant amounts) in their free time. so having a github profile is still a positive signal towards being a good coder (assuming, of course, that practice causes improvement).
It would be wasteful for a company to ignore this information.
> I would never pass the bar at a startup that's looking for the typical startup stereotype developer.
I'm not seeing a problem with this. Not because you are a bad developer, but that you don't match the type of person they want to hire at that time.
> I'm 100% certain that I make more business sense to hire than all of your average workoholic startup developer, but I would never be considered.
What's your experience as a "startup developer" that you feel justified in making that claim?
> In short there is soooo much that you need to consider when hiring.
Of course. But I don't see Github being the only thing to consider, nor do I see it as being something that should be ignored. It's a piece of the puzzle.
You're a programmer. A good one at that. But have you ever stopped to consider they need someone more than that for where they are at? Someone who can be more than a programmer?
> What's your experience as a "startup developer" that you feel justified in making that claim?
A lot of my peers work in startups and small companies. Most of them cannot make a schedule that they can meet. Many of them use the waterfall method. Most of them love to use this New Tech, because it's cool (NoSQL dbs in particular). Most of them work so much that they're less productive than I am with 40 hours a week.
I have been the sole developer for a complete rewrite of a program that gross for over a million a year, and I'm certain, absolutely certain, that most developers, and especially those who moan at "boring" work and like to use New Tech, would never have shipped anything remotely sellable.
> have you ever stopped to consider they need someone more than that for where they are at? Someone who can be more than a programmer?
The only thing I do not have, that a startup needs, is the ability to do PR. For the actual conceiving a product and evolve it, I'm just guy.
Anecdote here. I feel the same: when I had a job that was 30% coding, I did personal coding on the side. Now that I have a job that is 90% coding, I don't. I only have so much energy for coding, and by the time I get home, although I still have fun ideas that I'd like to do, I just don't have the energy to start writing anymore code. If I forced myself to code continuously, the overall quality of all my code would drop a lot. It's fun, yes, but it's also just too mentally taxing.
I recognize if I was planning to go on the market, though, I'd need to force myself to write some "on the side" code so I'd have a recent portfolio to show. I think it's just part of the expectation, the same way I would have to take time to write cover letters, etc.
When you say 'Screening based on a GitHub account', I think it's important to differentiate whether we are screening out those that don't have activity or moving those that do to the front of the line. There is a difference, and I think that difference is somewhat key to the author's article.
There is no difference unless you frequently hire the people you've put at the back of the line because of their lack of GitHub presence.
"I hired the other guy because I screened out the non-GitHubbers" and "I hired the other guy because I gave preference to active GitHubbers" -- I don't see the distinction.
> In interviews where I've been the interviewer, we've used it as a filter to determine if a candidate cares enough to code on their own, if they contribute to open source projects, what their coding style is like, what languages they gravitate to writing in, and just as a general personality guideline.
This is covered by the OP, but if you are using Github as a part of your hiring decision, you are going to be putting at a disadvantage many different kinds of people who do not or cannot contribute to open source or personal projects. The OP argues that Github is not necessarily a useful indicator of the things you mentioned and if Github becomes a very influencing factor for many companies hiring decisions, then it becomes de facto required and means you must work more as a programmer than you already do. This extra work is more able to be done with those that have free time and more personal resources (e.g. income), so some types of people are probably being excluded from your hiring process, leading to more a of a developer monoculture.
"She covers the reasons why using OSS as a hiring filter biases your selection process toward white men, and the excuses we use to tell ourselves everything is A-OK."
What...the..fuck? I never thought I would see something like this on the front page of hacker news. But obviously anything can happen.
If you have time to peddling your diversify book, write angry tweets, go to conferences and do podcasts. You have time to write code. That is, if you're a software engineer (the people who use Github mainly)
what makes you think coglan and dryden are speaking on behalf of themselves, and not on behalf of all the people who don't have the time and luxury to write code, and are being unfairly and systemically penalised for it?
In fact, I'd go so far as to say (just to see what happens to this industry): On all these "job posting" sites, [Your Website] should be a Required Field for Web Developers. Period.
Show me that you take the time to register a domain, configure a host, log in to that Linux box, and build the Web.
A more pertinant question is: Why would you hire a Web Developer who has no place on the Web? It has to be Your Domain, Your Place on the Web. You. What genuine rebuttal is there against this? (There has to be a pretty Good Reason to hire a Web Developer who does not have a Website.)
Forget the "online portfolio" debate; build the Web and actually be about that.
I will not put my real name online in a public forum. Especially not linked with my CV that has a lot of personal information on it. I am afraid of harassment and stalkers, and I really want to control the amount of personal information that gets out there. I don't have a LinkedIn for that reason. I know a lot of that can be found if someone is digging hard enough, but I am extremely uncomfortable with just anyone finding my CV with a Google search. I am really uncomfortable with my work history being public information. In theory I could make that information password protected I guess.
Does it limit me? Probably.
My ideal, if you search for my name in a search engine and NOTHING comes back.
I would advise the author not to worry about this.
I recently went through a job change, and to enhance my chances, I spruced up my Github profile, and put a link to it at the top of my resume. It's not the most active profile, but all the work there are wholly self-initiated projects, all of which tackle some interesting, often original problem. One of the projects randomly ended up with a few stars without me posting that link anywhere. Having code out there would give me a little leg-up over the intense competition, right?
Of the dozen or so tech phone screens, not one asked about it. Only one asked me to talk about a personal project, and it was abundantly clear he had not looked at the Github link.
At least he asked. One phone screen was with a recruiter at a famous open source company, and even she had not looked at it. To be fair, it was a recruiter call and not a technical one, but I thought she'd at least acknowledged it.
Most of the phone screens turned into onsite interviews, and again, nobody even mentioned Github. Well, it did come up in one interview, where the interviewer was doing a deep dive into IP networking details, and I told him in an offhand manner that, y'know, I had code out there that did exactly what he was asking...
The companies I interviewed with ranged from a couple of startups to a bunch of US technology giants in a variety of fields, and many of them get discussed on here regularly.
My advice is, don't put too much stock in your Github profile to help your job prospects. For whatever reasons, maybe the same as TFA's, practically nobody cares. Instead, invest in practicing the same old Google/Amazon/Facebook whiteboard-a-problem style that everybody and their grandmother uses, even if the work involved is nowhere near the kind of work (some people at) Google/Amazon/Facebook do.
As a personal anecdote, one recruiter from a well-known organization did mention my Github page as an indication of drive and initiative, but it was by no means a deciding factor. Just another piece of evidence on top of a lot of other things.
OSS/GitHub is what let me crack into the industry without having a CS degree or particularly good contacts. I started learning to code a year or two ago, then started contributing to open source and now I have a pretty solid track record on interesting projects that's helped me get some interest and interviews. Not sure how I could have done that otherwise...
> That is, GitHub picks your most popular repos and puts those at the top. You have no say about what you consider important, or worthwhile, or interesting, or well-engineered, or valuable
Well said. This is also valid for stackoverflow, where your "top" questions are often silly ones that everyone can understand, while the ones you consider valuable are buried in anonymity.
Some sort of showcase feature would be nice, in both cases.
Any resumé screening and interviewing process boils down to only 3 essential questions:
- How well can you do this work?
- Will you blend in (can you endure our work environment)?
- Is it easy to work with you (you are not a dick, are you)?
So get over it, everything you do online IS more real than your resumé. Why? Because we are an online company and your online reputation is more important than a single document traditionally written in a corporate mumbo-jumbo style where the author tend to exaggerate his accomplishments.
When I ask for your github profile, I'm not asking for free work - FOSS is not about free work. I want to see your pull requests. Why? Because from time to time we do pull requests, and do it not because we are good Samaritans but out of sheer greed.
We use an open source technology stack. We push it's boundaries, we find bugs, we fix bugs. We find components lacking, we implement the desired feature and contribute back. We port code from other languages or create it from scratch and open source because it is cheaper than maintaining a closed source library. Is it free work? No, it is cooperation, and it makes sense economically.
Do you have a patch accepted in a high profile FOSS project? This means:
- You are doing serious work based on FOSS stacks
- You have some communication skills
- You have coding skills, can write tests and documentation
- You can fix bugs and implement new features
I want to see the issues you open: are they well documented, with reproducible test cases?
I want to see your stack overflow profile: do you write good questions and good answers? Because a good question is 90% of a good answer, and good answers is what our customers demand.
Do you write really odd blog posts or troll around in online forums? Sorry, I guess you will not fit our work environment.
GitHub is not your CV, but I think it should be on your CV. If you're an artist when you interview they usually want to see a portfolio of your work, GitHub is a pretty handy way to portfolio code for others to view.
There's many good things about it, and reasonably few downsides to trade off against, but overall if you've got a GitHub I'd be more interested in seeing that than knowing what grades you got at school 15 years ago.
> The demographic make-up of open source contributors is even more skewed toward white men than the software industry is
What the fuck am I reading? Is this asshole author trying to inject racism into something that is inherently race-, age-, gender-, wealth- and location-agnostic? Github doesn't care who you are, what you code or in what language you code it. And yet here we are with a dumbfuck author who, for the sake of clicks, just absolutely needs to shit on white men, that have been the bane of all tech-interested non-white men since the dawn of time.
When I hire I ask for code samples first and the person's name last. Shit, I'd hire the person based purely on code, put up anywhere on the net, and an anonymous chat, conducted fucking anywhere, and only require their name and social security number when signing the contract.
Shit I'm pissed off now. Some people just can't accept that technology is the ultimate equalizer and instead have to project their white guilt into everything.
If you think the issue is about what Github "cares" about, you missed the point entirely.
The point is that those who have the free time and opportunity to contribute to OSS projects are more likely to be of some means. Given the economic realities of this country, those with some means are statistically speaking far more likely to be white males than anything else (which is confirmed by the data).
The conversation that has been occurring recently is about how having a Github profile is now becoming a de-facto must-have because hiring managers are increasingly seeing it as a shortcut filter.
It's great that you would hire someone based on code put up anywhere on the net, but that's not what people are commenting about. People are saying that Github should not become mandatory, for many reasons, among them because you're limiting your pool of candidates to those with some means.
This is a common misconception about the FOSS economy.
It is not about donation, it is about cooperation and net efficiency, and a good share of open source maintainers and contributors are very well paid to do what they do - they are not hobbyists donating weekends to the cause.
> People are saying that Github should not become mandatory, for many reasons, among them because you're limiting your pool of candidates to those with some means.
Is that a concern when hiring? Isn't the biggest concern false-positives? Hiring bad people is the worse hiring mistake. The argument around github seems to be that while the true positive rate is very high, there is also a high false negative rate (rejecting qualified people because they aren't on github). From a hiring perspective (purely arguing economics), that is an acceptable trade-off. Your upside is limited by a smaller pool of applicants (that are still qualified), but your downside is greatly smaller.
You missed the point. Nobody is projecting white guilt into anything. The author linked to another article that presents some evidence as to why women might be less inclined to contribute to OSS, and have less code that was written outside of the workplace to display to potential employers.
(a) if someone I am interviewing has no idea what github is, that's a negative sign. this is completely unrelated to whether the person has time to contribute to projects
(b) many great engineers have small forks of other projects. This shows me that:
(i) they know how to find and adopt open source projects into their workflow, which will save me money
(ii) when there is a bug or something that does not fit how they want to use the project, they are able to make that 15-line change or fix.
(iii) if their fork is merged back into the original project, that can indicate quality of patches, ability to work with a community, explain benefits to their changes, etc.
Honestly, those skills are very valuable indicators and do not require someone to be giving up their nights and weekends to OSS.
His theory is based in the premise that most GitHub (and FOSS) contributions are made by hobbyists in their free time. This is a common misconception of the FOSS economy.
Open source is not about donation, it is about cooperation and cooperation makes economical sense for a lot of business. Yes, there are the free-riders, but they are the copycats, we are the ones setting the pace.
Startups tend to be pushing the envelope, people from all genders from all over the world are being PAID to fix bugs and implement new features during the business hours, not over weekends. I do, I'm Brazilian and not white by north American standards, so this whole "github bias" thing is BS based on a naive assumption.
I've been able to get through my career without LinkedIn or GitHub accounts as proof of my skills. I've pored my time and energy into the jobs I hold and hadn't gotten inspired to start contributing to OSS until just this week[1], so I have no publicly available proof of my skills. However, I can give in depth descriptions of interesting algorithms and data structures I developed and deployed related to:
1) Motion detection algorithms for security cameras in outdoor environments with a lot of ambient noise that needed to be ignored.
2) Medical informatics data model with a recommendation engine component for predicting which ICD/CPT/SNOMED code to use for optimal chance of insurance coverage.
3) R&D, implementation, and deployment of an EAV/CR [2] open schema based analytics platform using the neo4j graph database for persistence
So far I've had the luxury of only using meatspace networking to find interesting jobs to work at, but I stress over suddenly finding myself unemployed in the future and having to face the modern interviewing process with social networking activity used as a screen.
Can anyone describe how one's GitHub is used in an interview? Is a candidate with an interesting, non-trivial personal project on GitHub considered, or are candidates judged on their contribution to others' projects?
[1]Started working on a neo4j data science project involving gathering, refining, and translating film, actor, and director data into a graph data model for efficiently answering deeply recursive queries.
Recruiter here. I've seen GitHub used in interviews where the interviewer may look at the code before the interview, and then bring up the repo during the interview to discuss it. This is usually to challenge why certain decisions were made, what could have been done differently, etc.
It isn't much different than how a conversation would go after a live coding exercise to review the work, with the exception that the candidate in the case of a prior GitHub work will have had the advantage to clean things up and perhaps has gone through several iterations already.
Except in a live coding exercise most people are trying to be efficient or 'to it right' and paying attention to what they are doing and how.
I realize this is anecdotal, but 95% of the public code in my git repo is stuff I did as fun. I didn't care about being right, or care about memory issues or being thread safe or anything other than 'I wonder if...'
In that instance, and I suspect a lot of other people public where they aren't contributing to something using the repo code as a talking point is counter-productive.
Why did I do it that way? Because I wanted to see what would happen.
Sure, but if you were aware that your public git repos would be up for discussion in an interview, you might go back and switch some things up, no? At least a handful of times, I know that the repo that would be discussed was referenced before the interview as an agenda item - "we'll talk about PROJECT A from your GitHub account".
Odds are no, I won't do anything to the code. Why? Because for one, it would likely take a bit of time to 'make it decent' and secondly, by the time I've been informed that Project X will be talked about the interviewer has already looked at it.
If I change it at that point then I'm either being disingenuous or taking away the aspect he wanted to talk about.
All that said, if I put my github url on the resume then it's fair game to _talk about_. My point is (same as the articles) using it as a filter is generally a bad idea.
I occasionally do interviews for my company, and I use Github in the manner that fecak describes.
Before the interview, I will check out your stuff and make sure I have compilers/interpreters for your favorite languages (as best I can identify them). Then I will do a combination of live coding, and talking about repositories that might have caught my eye.
In this kind of situation "Why did I do it that way? Because I wanted to see what would happen" Is a great answer. It leads into a discussion about what happened, and whether or not you would do it again (without waiting half an hour for you to work through a problem of my devising). I could not care less whether the code was good or bad if you can show that you analyzed the experience and learned from it.
Part of writing good code is having written bad code in the past. I get that. I'm a programmer myself.
Now, we do not use Github as a filter (as the article discourages). If you put your Github in your resume, I will use it to make the interview itself a more valuable experience for both of us. If you chose not to put your Github on your resume, then you will get the generic interview, and I might not have your text editor/IDE ready to go.
Glad you're interested! I just started on it and need a couple days to hit the poc milestone and then write up a guide for it. Shoot me an email to the address listed in my profile and I'll ping you when it's ready later this weekend.
Also why, after flirting with the idea for one hiring cycle, I stopped asking people if they had Stack Overflow accounts. Yes, if they had one, it provided useful information about their interests and communication ability. But it has a demographic skew that could have led me to rejecting other candidates unfairly.
That said, my own presence on Github is pretty anemic, so maybe that's another form of bias!
134 comments
[ 5.6 ms ] story [ 248 ms ] threadBut I do find it funny that they don't think that Github should be used as a resumé but their "conferencing", tweets, books about diversifying and podcasts should do.
Talkers or Makers?
I write OSS on my free time because I feel like other alternatives might not be good enough. I spend a couple of hours in the morning, weekends and etc. It's hard and time consuming. I can take two days if just figuring out what the selector should be called or argument names.
Right now I am getting paid for OSS, but I even spend my free time on it because I'd like to make sure it comes out good.
It's very slow and time consuming, and sometimes keeps me up at night, but I LIKE IT. And I like acknowledgment to it.
These sorta articles invalidate what I make just because I FEEL like making them. Not sure what to feel about that.
I have friends who make stuff to Go-lang because they want to learn the language and make stuff that doesn't exist. These articles invalidates their passion.
And saying bullshit like LGBT or other genders are actively being excluded... well it makes me hard to take you seriously. I'm not white, and I am part of LGBT.
Maybe it's because I'm getting old, but I've learned something... stop caring what others are saying and doing. If you feel like making shit, then make it.
I hope one day we will be able to distil the ultimate rule: "being smart and proactive is discriminatory".
Also, I'd challenge you to find where the article says or even implies that you shouldn't be making stuff because you FEEL like it. Quite the opposite, in fact. You should be making stuff because you feel like it and not because you have some expectation of getting a better offer or being able to show off your GitHub profile at your next interview.
As for the white, male bias...not sure what to tell you. It's real. The statistics don't lie. I'm glad that you have had success as a non-white member of the LGBT community, but as the saying goes: the plural of "anecdote" is not "data".
Actually, Ashe has that on the Hire Me Page.
>As for the white, male bias...not sure what to tell you. It's real. The statistics don't lie. I'm glad that you have had success as a non-white member of the LGBT community, but as the saying goes: the plural of anecdote is not data.
I understand this is a fact, but how this can be used against Github as a resumé or against OSS on your free time, I have a hard time seeing that. It comes off as incredibly stupid.
I really don't think anyone is saying not to do OSS on your free time. That there is a greater lack of diversity in OSS than in software engineering as a profession suggests that whatever it is that keeps minorities out of software engineering might be amplified in the OSS community, but it is not proof of this.
As for being an argument against using GitHub for hiring decisions, I'd pose you a scenario...two recent college grads are looking for their first job. One had parents who could pay for college, so in between rounds of beer pong and slacking off from class, this student found time to write a handful of OSS libraries and posted them to GitHub. The other was raised by a single parent in poverty, and is now working two part time jobs to fund their education. Between work, this person studies hard, does well in class, but has no time left to work on any open source side projects.
Which of these two students will be the better asset for your startup? Which of these two students will reply to your job post that says "don't send us a resumé, just link us to your GitHub profile"? Statistically speaking, which of these two students is more likely to be a racial/ethnic minority?
This is what we are looking for in your github profile. If you don't have it, may be you are fit for the work, but clearly you are not playing the same game yet.
It kind of reads like a no-child-left-behind or no-child-gets-ahead (can't remember which) proponent piece. We all have busy lives and saying its a race/gender etc. issue is way off the mark. I wish that whole section was left out as it just confuses the pretty simple point I think she was trying to make that open source engagement should not be an authoritative filter.
Or, to take it to an extreme, why is Silicon Valley in California and not Botswana? Do you believe that the people of Botswana are inherently less intelligent? less motivated? less capable?
Or is it their environment which is working against them? Jared Diamond has probably one of the most interesting takes on how these sorts of inequities can arise on a regional level (Germs, Guns, and Steel: http://www.amazon.com/Guns-Germs-Steel-Fates-Societies/dp/03...), but is it such a stretch to imagine that the same sorts of inequities don't exist at smaller scales as well?
The OP is arguing that if a company values or gives extra weight to candidates with OSS and/or Github contributions, they are by definition skewing their candidate selections towards white men. The main criticism is that the desire for easier metrics to make higher decisions has built in bias problems that will exclude whole groups of people.
The thing is, something can be both a filter against 'underrepresented groups' AND a valid criterion for hiring.
Requiring a CS degree probably biases in favor of white and asian males and against black females. It is also a very valid filter for hiring programmers (pace the self-taught).
Not much can be done about this fact except for increasing the pipeline of underrepresented groups into CS degrees, recreational programming, OSS participation, and so forth.
Many different factors need to be used as part of a full portfolio. Look at their resume, their github (if any), their formal education and self education, their work projects, and so forth.
http://ashedryden.com/blog/the-ethics-of-unpaid-labor-and-th...
Here's some key points from it if it is tl;dr
Marginalized people in tech - women, people of color, people with disabilities, LGBTQ people, and others - have less free time for a few major reasons: dependent care, domestic work and errands, and pay inequity.
I know many women that either don't contribute to OSS because they've been dismissed for being women - being too pretty, not pretty enough, being forced to prove their competence more than their male counterparts because they're women. I've talked to women who use gender-ambiguous github names and don't post a picture of themselves as their avatar because of how quickly this happens. In addition, the sexual harassment, slurs, and other derogatory language that are used directly or indirectly at these groups of people causes many to not want to participate at all.Additionally, there are very public instances of assuming someone is male. with a link to this hacker news post - https://news.ycombinator.com/item?id=6712954
Some research about how women get 25 times more harassing messages then men:
http://www.researchgate.net/publication/4243412_Assessing_th...
More research about harassment of women online:
http://indiana.edu/~tisj/readers/full-text/15-3%20herring.pd...
OSS as a hiring filter biases your selection process toward people who are either paid to do it at their current job, or who have few enough prior commitments in the rest of their life to be able to afford to do it outside of work.
I'm not sure whether it biases towards white men or not, but I'm pretty sure it biases towards younger people and against people who are in enterprisey companies (or who work on private contracts).
Also please read my above comment. https://news.ycombinator.com/item?id=6740089 The article links to another article about why it favors white men.
I had an employer spring an intellectual property agreement just like that on me. I'd been working there for six months already, and had to threaten to walk out unless they specifically put in an exception for open source work in mine.
It's worth noting that James is a UK based developer. Most of his points may be completely valid in the US but they are completely at odds with the UK climate. I've worked with an inordinate amount of tech companies in the UK and consulted with many more and I've yet to come across any that hire based primarily on the merits of a candidates github repo.
In fact, I'd argue his understanding of the request for a candidates github URL is completely wrong. One of my first requests when speaking to a potential candidate is for their github/bitbucket profile so I can see some actual code examples. I know that it's rare to find a true indication of someones ability from just their github contributions but for example, it can help me discern whether a ruby candidate adheres to ruby best practices or not. A small example of a minor indicator that someone might be a good fit for our company.
A man with significantly more experience in the industry than me once put it better than I ever could:
The more information I can get, the easier it becomes for me to make a decision, and to feel comfortable in it. And the best sort of information to give me is to show me what you can make, whether that's code for a backend position, or interesting design/UI for a front end position. It also gives us another thing to talk about during interview; and more opportunity to ask about design decisions and rationale.
Some of the best people I've ever sourced didn't have any publicly accessible code but if they had, I would have found them a hell of a lot quicker.
There are two ways to read this: (1) as a marker; (2) as a filter. Would be interesting to hear your thoughts on the interplay. My guess is that there is some game theory on signalling at play on both sides here.
If you're constantly tweeting/blogging good quality content about an area of technology that is relevant to my business then of course I'm going to take notice. That, however, doesn't necessarily make you a better candidate by default, it just means you were easier to find.
The problem with this is that you can't really make a logical decision when the code (on Github/bitbucket) is removed from its context. Maybe none of the code follows best practice, but there is a compelling reason why this is so. If your decision on whether to pursue a candidate or not does not include a discussion with the candidate about their available code, you are missing an integral piece of the puzzle.
You are absolutely right. I can honestly only ever think of one circumstance where I dismissed someone based exclusively on what I saw in their github repo. I felt guilty so I phoned them a week later to discuss my thoughts and it turns out my suspicions were correct but that was categorically an edge case.
I have a hard time thinking of a better way to see how good someone is at all of those those thing than to look at code they've written in the past.
Also, the title of the article is "Why GitHub is not your CV" yet all it talks about is how it can't replace an interview. Which I don't think many people advocate.
Maybe your github profile isn't a good portfolio by default, but it's an excellent service for creating your portfolio. On top of that, even a poor github profile provides more signal than most CVs I've read.
But there are also a lot of "hot" companies, of the sort that are talked about a lot on HN, that are pushing github as the end all be all.
The real point isn't about what the average company is doing, it's about which attitudes are sensible.
(Bias: I got my first job as a developer based on a combination of a non-technical friend's contacts and my github repos looking acceptable. I was three years out of grad school in the humanities at the time).
Yeah... that's not what they mean, and you know it.
I just threw that together quickly a while back and haven't updated it, but github whould make a fantastic site for a portfolio.
Apparently not.
When people are referring to using Github as your CV, they aren't talking about Github pages. They are talking about the repositories and the code. Github pages are another thing entirely, and not what is being discussed here.
> but github [pages] whould make a fantastic site for a portfolio.
No one would argue that github pages would make for an easy to use hosting provider for a portfolio site. No one is suggesting that.
That's actually my point. They should be, and maybe you didn't read the comment I was replying to, but that is in fact exactly what we were talking about - "Unless you have your CV on github.."
Of course having a mess of github project pages is a bad portfolio, but each of the individual projects in your portfolio makes sense as a github project, and the fact that they give you a pleasant <username>.github.io site to tie it all together makes it one of the best ways to host your portfolio.
It makes perfect sense to have github projects as your portfolio parts and turn it into the 'narrative' so beloved of the original author with a github pages site.
So then you are still missing the point. And so was the original comment you replied to. When people are talking about github as your CV, they don't care that you happened to host your website on ghpages. It's using the code repos themselves. Where you host your website is beside the point.
> It makes perfect sense to have github projects as your portfolio parts and turn it into the 'narrative' so beloved of the original author with a github pages site.
Yes. But again, that's not what's being discussed. You are in fact agreeing with the foundation of the idea.
Basically: GH Pages are merely a way to host your own personal website. The fact that it's also on GH isn't special in anyway, and you could achieve the same thing self-hosting. Remove that from the equation, and merely having GH repos is the issue.
People are saying you need that 'narrative.' How you achieve that is up to you, but relying just on the default GH repos doesn't help.
As for the main argument, I think it's flawed. Github (or any other online repo) is an important asset and Open Source contributions matters. Especially if you don't have prior job experience. It's a very good way to show that you can actually write code and you will be hands on from the first week, or day, or hour.
I'm not sure I really understand what the author is trying to say. Is it that OSS encourages a culture of being exploited and that GitHub is inadvertently pushing that culture? Or is it that recruiters don't know how to assess the code they see and this is somehow GitHub's fault? Or is it that working on code on your spare time is really a bad thing? Or maybe it's that only white men create GitHub accounts.
What?
> You just get what other people think is useful. Aside from which, GitHub displays a lot of useless stats about how many followers you have, and some completely psychologically manipulative stats about how often you commit and how many days it is since you had a day off.
You get social proof, some measure of conscientiousness, and a crowd-sourced filter. All on one page. That sounds great. I don't see the problem.
Companies want to hire influential workers. It's relevant. So is putting in the work.
And products which people find useful are vastly superior to those that the author finds well engineered. I'm guessing many company owners will share that view.
I don't see how those two points are related. A measure can be good or bad independent of who you choose to measure by it.
Github(not necessarily just having an account but actually looking at what they have done) is a good measure of skill because it allows you to see the person's work output. You know exactly what they contributed to a project and what type of work they are interested in and are familiar with.
Now just because it is a good measurement of skill doesn't mean that it is a good hiring filter. The two are similar but not the same thing. A good hiring filter filters for skill but doesn't filter for other attributes like race and gender. It is kind of like saying measuring how much weight a person can lift is a bad measure for determining a person's strength because we only measured white guys. It is a good measure of strength, just misapplied if you are trying to find the world's strongest person.
It's a trade-off. You want to see as many people meeting your criteria as you can, but don't want false positives. A github profile might have many false negatives (because of the white man skew), but that's a price a company might be willing to pay, if they get enough applicants anyway.
I'm actually lucky enough to fall into the former category, but I feel that if you only hire people with a respectable presence on github, you're disregarding a large number of people for something beyond their control that doesn't accurately reflect their ability.
What you spend your free time on is not beyond your control (at least when you're a software dev and presumably paid enough to actually have free time). And you might decide to spend it on other, unrelated hobbies. That's cool, but you should be aware that unless you can present that hobby as interesting, unless you can sell it as something that helps you grow, you are making yourself look less good that someone doing the same kind of work, and then doing OSS in their free time.
A company is not going to disregard you for not having a respectable github presence if no other candidates have a github presence either. But if there's a clear disparity, why should they take an extra risk by hiring you, rather than hire the person that can show them their actual contributions?
...or you know, don't have family obligations.
I do agree to some extent with what you're saying, but as others have stated, it should be one of many factors taken into consideration, and it depends on the culture the company is trying to foster.
I personally have looked at github profiles of people I'm interviewing, if they chose to share it with me.
Maybe I see the world through rose-colored glasses, but I don't see why sane employer would like to forbid contributing to open-source project if e.g. this project is used for work and has some bug. And there are always bugs or inconveniences if you use something heavily. For some industries it is even hard for a developer not to be on Github, because a lot of software she uses is on github, and in a lot of cases the best way to fix the issue she's working on is to contribute to open-source project that caused this issue, instead of e.g. working around it by some hack.
I agree that discarding people without respectable github presence is bad (unless you're looking for a very specific kind of people, e.g. for marketing purposes). But I can see how not being on Github at all (even with minimal presence) could be a bad sign in some cases. Of course, industries are very different and this shouldn't be a general rule.
I've seen it lots on GitHub, and the problem seems to be growing. The guy that parachutes into a project -- one with money-impacting code already deployed on 1000's of real world systems used by ordinary people -- submits a pull request where he's modified every single file in the project, making only superficial changes to formatting and whitespace, and probably the result of an automated tool, and most importantly DOES NOT THOROUGHLY TEST IT beforehand... yet, from GitHub's perspective he's now (a) an accepted code contributor, (b) modified lots of files -- prolific! -- and (c) has a high count of lines added/removed -- IMPACTFUL! -- and (d) very very busy beaver "working" on lots of projects. "Gosh, we want him!"
But does he/she understand threading, leaks, races, parallelization, good architecture, good documentation, automation, reproducability, security, scalability, strategy, pacing, production support, risk mitigation, algorithmic complexity, tradeoffs, market priorities, DRY, YAGNI, edge cases, BATNAs, etc etc? Well... er... maybe not so much. But his/her eyes just light right up when you mention you have a foosball table and a keg in your cubicle-or-overturned-door "office"!
That's what we'll get.
The Beats were a genuine movement of talented, hard working literary types. They were hip. They were cool. They were who everyone wanted to be, so people started emulating their dress, their mannerisms, their speach.
But they were not driven by the same passion. Their motivation was different.
Ginsberg said of the Beatniks: "If beatniks and not illuminated Beat poets overrun this country, they will have been created not by Kerouac but by industries of mass communication which continue to brainwash man."
If we let companies continue to use GitHub as a hiring tool, the OSS community will gradually become overrun by people attempting to achieve the same success as the OSS pioneers by mimicking their actions...but lacking their same motivation.
It's hard for me to say this. I like GitHub. I like Open Source. I am proud of what little I have managed to contribute to that community, and I think it is to my advantage if a company considers my GitHub profile when making a hiring decision. That said...I'd rather give up that advantage in exchange for keeping GitHub as an open community to share source, instead of a cauldron for the latest start up founders to pluck their next engineering hire from.
The people ahead of the curve have to be more motivated, but if we get more people sharing, more eyes to find and fix bugs, more people from other walks of life that understand a bit more of the hacker mentality, more acceptance of sharing code as a normal part of life, then the world is a better place.
Yes, it's a shame that not everyone who plays the piano has the dedication and vision of Rachmaninov, or that everyone who paints is Picasso, but I think the world is a better place for amateurs and dilettantes. Sure, we'd perhaps have better art if it were restricted to those who must, but we have a better society because those who are moderately interested can.
Artists practically invented the 'race to the bottom' effect.
The Internet and digital media came late to the party, magnified the effect, then widened the number of domains impacted
It's not a good thing. Submitting proper bug reports is hard, and contributing to an existing project without making more work for others can be hard as well.
The best software does the most with the least amount of code while still being easy to read--and when a library or app gets there, it's time to stop.
The problem with a hypothetical swarm of people trying to pad their Githubs (the same way premeds pad their CVs, for example) is that they'll flood otherwise stable projects with garbage, or start rewrites for no other reason than they think they can do it better. A lot of good projects are going to get fucked up this way.
> determine if a candidate cares enough to code on their own
Which he is arguing that you are not a bad developer for doing other things outside of work. The vast majority of people need to not code to regenerate.
I can use myself as anecdotal evidence: I'm the goto guy when it's particular difficult to solve a bug, when it's a new framework, or when the teams are unsure how to solve a problem. I love coding, I constantly get compliments for my code and solutions. I do rarely code outside of my work. I used to before I got a "real" job after my degree, but now I (almost) only code at work. I usually think about solutions and architectures outside of work though, and I write a lot of pseudo code on paper if I get an idea for an algorithm - but I do not make binaries or contribute to OOS or a public Github repository. I have a spouse, children, friends, and hobbies that simply doesn't get as much of my time as they deserve.
I would never pass the bar at a startup that's looking for the typical startup stereotype developer. I'm 100% certain that I make more business sense to hire than all of your average workoholic startup developer, but I would never be considered. I have seen so many developers with great personality and glowing Github repo fail so miserably because they have poor work ethics and are unable to do "the boring stuff" that needs to be done in a business.
I can make a sensible plan, estimates that aren't completely bonkers, and I can tell when we're no longer on track to meet the deadline the same week it starts to slip. If I make a promise I keep it, or let you know that I'm unable to. I can also work completely agile, and not some "agile-but" that is so prevalent in the industry. In short there is soooo much that you need to consider when hiring. Screening based on a Github account is excluding developers that would be just the guy/gal you're looking for.
While I understand that many people enjoy writing code and do so for fun, there are a large number of fantastic engineers that don't (myself included). Just as I wouldn't give someone preference for a robust profile, I'm not going to penalize someone for lack thereof. There is only so much time in the day and if they can do ten hours worth of work in eight hours and choose to spend their off time with their family, friends, or hobbies, good for them. Knowing how to decompress and enjoy both work and life is just as valuable to me as crafting solutions to engineering problems.
We don't contribute to FOSS because we are hobbyists or good Samaritans, we do it because we need the features or fixes. We do it because in the long term it is cheaper and more efficient than maintaining a fork or developing a closed source component.
This doesn't mean that the people working in non-web industries "are not playing in the same league" with respect to skill, it just means that they don't have a huge public representation of the work they do.
Sure, but there aren't many people who hate coding but still do it (in significant amounts) in their free time. so having a github profile is still a positive signal towards being a good coder (assuming, of course, that practice causes improvement).
It would be wasteful for a company to ignore this information.
Very. All I'm trying to say it's not something you should even look at until you're later in the process of hiring.
I'm not seeing a problem with this. Not because you are a bad developer, but that you don't match the type of person they want to hire at that time.
> I'm 100% certain that I make more business sense to hire than all of your average workoholic startup developer, but I would never be considered.
What's your experience as a "startup developer" that you feel justified in making that claim?
> In short there is soooo much that you need to consider when hiring.
Of course. But I don't see Github being the only thing to consider, nor do I see it as being something that should be ignored. It's a piece of the puzzle.
You're a programmer. A good one at that. But have you ever stopped to consider they need someone more than that for where they are at? Someone who can be more than a programmer?
A lot of my peers work in startups and small companies. Most of them cannot make a schedule that they can meet. Many of them use the waterfall method. Most of them love to use this New Tech, because it's cool (NoSQL dbs in particular). Most of them work so much that they're less productive than I am with 40 hours a week.
I have been the sole developer for a complete rewrite of a program that gross for over a million a year, and I'm certain, absolutely certain, that most developers, and especially those who moan at "boring" work and like to use New Tech, would never have shipped anything remotely sellable.
> have you ever stopped to consider they need someone more than that for where they are at? Someone who can be more than a programmer?
The only thing I do not have, that a startup needs, is the ability to do PR. For the actual conceiving a product and evolve it, I'm just guy.
Citation needed. It seems to me that the majority of people don't.
I recognize if I was planning to go on the market, though, I'd need to force myself to write some "on the side" code so I'd have a recent portfolio to show. I think it's just part of the expectation, the same way I would have to take time to write cover letters, etc.
"I hired the other guy because I screened out the non-GitHubbers" and "I hired the other guy because I gave preference to active GitHubbers" -- I don't see the distinction.
This is covered by the OP, but if you are using Github as a part of your hiring decision, you are going to be putting at a disadvantage many different kinds of people who do not or cannot contribute to open source or personal projects. The OP argues that Github is not necessarily a useful indicator of the things you mentioned and if Github becomes a very influencing factor for many companies hiring decisions, then it becomes de facto required and means you must work more as a programmer than you already do. This extra work is more able to be done with those that have free time and more personal resources (e.g. income), so some types of people are probably being excluded from your hiring process, leading to more a of a developer monoculture.
Me working for free for an employer that tells me what to do does not lead from me working in my spare time doing what/how I want.
What...the..fuck? I never thought I would see something like this on the front page of hacker news. But obviously anything can happen.
Whether it (your CV link, internally — extracts data from github? — or externally) points to your github profile or not is your decision.
Why is this still being discussed ?
Websites, people. Websites.
Show me that you take the time to register a domain, configure a host, log in to that Linux box, and build the Web.
A more pertinant question is: Why would you hire a Web Developer who has no place on the Web? It has to be Your Domain, Your Place on the Web. You. What genuine rebuttal is there against this? (There has to be a pretty Good Reason to hire a Web Developer who does not have a Website.)
Forget the "online portfolio" debate; build the Web and actually be about that.
I will not put my real name online in a public forum. Especially not linked with my CV that has a lot of personal information on it. I am afraid of harassment and stalkers, and I really want to control the amount of personal information that gets out there. I don't have a LinkedIn for that reason. I know a lot of that can be found if someone is digging hard enough, but I am extremely uncomfortable with just anyone finding my CV with a Google search. I am really uncomfortable with my work history being public information. In theory I could make that information password protected I guess.
Does it limit me? Probably.
My ideal, if you search for my name in a search engine and NOTHING comes back.
I recently went through a job change, and to enhance my chances, I spruced up my Github profile, and put a link to it at the top of my resume. It's not the most active profile, but all the work there are wholly self-initiated projects, all of which tackle some interesting, often original problem. One of the projects randomly ended up with a few stars without me posting that link anywhere. Having code out there would give me a little leg-up over the intense competition, right?
Of the dozen or so tech phone screens, not one asked about it. Only one asked me to talk about a personal project, and it was abundantly clear he had not looked at the Github link.
At least he asked. One phone screen was with a recruiter at a famous open source company, and even she had not looked at it. To be fair, it was a recruiter call and not a technical one, but I thought she'd at least acknowledged it.
Most of the phone screens turned into onsite interviews, and again, nobody even mentioned Github. Well, it did come up in one interview, where the interviewer was doing a deep dive into IP networking details, and I told him in an offhand manner that, y'know, I had code out there that did exactly what he was asking...
The companies I interviewed with ranged from a couple of startups to a bunch of US technology giants in a variety of fields, and many of them get discussed on here regularly.
My advice is, don't put too much stock in your Github profile to help your job prospects. For whatever reasons, maybe the same as TFA's, practically nobody cares. Instead, invest in practicing the same old Google/Amazon/Facebook whiteboard-a-problem style that everybody and their grandmother uses, even if the work involved is nowhere near the kind of work (some people at) Google/Amazon/Facebook do.
Well said. This is also valid for stackoverflow, where your "top" questions are often silly ones that everyone can understand, while the ones you consider valuable are buried in anonymity. Some sort of showcase feature would be nice, in both cases.
- How well can you do this work? - Will you blend in (can you endure our work environment)? - Is it easy to work with you (you are not a dick, are you)?
So get over it, everything you do online IS more real than your resumé. Why? Because we are an online company and your online reputation is more important than a single document traditionally written in a corporate mumbo-jumbo style where the author tend to exaggerate his accomplishments.
When I ask for your github profile, I'm not asking for free work - FOSS is not about free work. I want to see your pull requests. Why? Because from time to time we do pull requests, and do it not because we are good Samaritans but out of sheer greed.
We use an open source technology stack. We push it's boundaries, we find bugs, we fix bugs. We find components lacking, we implement the desired feature and contribute back. We port code from other languages or create it from scratch and open source because it is cheaper than maintaining a closed source library. Is it free work? No, it is cooperation, and it makes sense economically.
Do you have a patch accepted in a high profile FOSS project? This means:
- You are doing serious work based on FOSS stacks - You have some communication skills - You have coding skills, can write tests and documentation - You can fix bugs and implement new features
I want to see the issues you open: are they well documented, with reproducible test cases?
I want to see your stack overflow profile: do you write good questions and good answers? Because a good question is 90% of a good answer, and good answers is what our customers demand.
Do you write really odd blog posts or troll around in online forums? Sorry, I guess you will not fit our work environment.
There's many good things about it, and reasonably few downsides to trade off against, but overall if you've got a GitHub I'd be more interested in seeing that than knowing what grades you got at school 15 years ago.
What the fuck am I reading? Is this asshole author trying to inject racism into something that is inherently race-, age-, gender-, wealth- and location-agnostic? Github doesn't care who you are, what you code or in what language you code it. And yet here we are with a dumbfuck author who, for the sake of clicks, just absolutely needs to shit on white men, that have been the bane of all tech-interested non-white men since the dawn of time.
When I hire I ask for code samples first and the person's name last. Shit, I'd hire the person based purely on code, put up anywhere on the net, and an anonymous chat, conducted fucking anywhere, and only require their name and social security number when signing the contract.
Shit I'm pissed off now. Some people just can't accept that technology is the ultimate equalizer and instead have to project their white guilt into everything.
The point is that those who have the free time and opportunity to contribute to OSS projects are more likely to be of some means. Given the economic realities of this country, those with some means are statistically speaking far more likely to be white males than anything else (which is confirmed by the data).
The conversation that has been occurring recently is about how having a Github profile is now becoming a de-facto must-have because hiring managers are increasingly seeing it as a shortcut filter.
It's great that you would hire someone based on code put up anywhere on the net, but that's not what people are commenting about. People are saying that Github should not become mandatory, for many reasons, among them because you're limiting your pool of candidates to those with some means.
It is not about donation, it is about cooperation and net efficiency, and a good share of open source maintainers and contributors are very well paid to do what they do - they are not hobbyists donating weekends to the cause.
Is that a concern when hiring? Isn't the biggest concern false-positives? Hiring bad people is the worse hiring mistake. The argument around github seems to be that while the true positive rate is very high, there is also a high false negative rate (rejecting qualified people because they aren't on github). From a hiring perspective (purely arguing economics), that is an acceptable trade-off. Your upside is limited by a smaller pool of applicants (that are still qualified), but your downside is greatly smaller.
https://news.ycombinator.com/item?id=6740089
Honestly, those skills are very valuable indicators and do not require someone to be giving up their nights and weekends to OSS.
Open source is not about donation, it is about cooperation and cooperation makes economical sense for a lot of business. Yes, there are the free-riders, but they are the copycats, we are the ones setting the pace.
Startups tend to be pushing the envelope, people from all genders from all over the world are being PAID to fix bugs and implement new features during the business hours, not over weekends. I do, I'm Brazilian and not white by north American standards, so this whole "github bias" thing is BS based on a naive assumption.
1) Motion detection algorithms for security cameras in outdoor environments with a lot of ambient noise that needed to be ignored.
2) Medical informatics data model with a recommendation engine component for predicting which ICD/CPT/SNOMED code to use for optimal chance of insurance coverage.
3) R&D, implementation, and deployment of an EAV/CR [2] open schema based analytics platform using the neo4j graph database for persistence
So far I've had the luxury of only using meatspace networking to find interesting jobs to work at, but I stress over suddenly finding myself unemployed in the future and having to face the modern interviewing process with social networking activity used as a screen.
Can anyone describe how one's GitHub is used in an interview? Is a candidate with an interesting, non-trivial personal project on GitHub considered, or are candidates judged on their contribution to others' projects?
[1]Started working on a neo4j data science project involving gathering, refining, and translating film, actor, and director data into a graph data model for efficiently answering deeply recursive queries.
[2]http://en.wikipedia.org/wiki/Entity%E2%80%93attribute%E2%80%...
It isn't much different than how a conversation would go after a live coding exercise to review the work, with the exception that the candidate in the case of a prior GitHub work will have had the advantage to clean things up and perhaps has gone through several iterations already.
I realize this is anecdotal, but 95% of the public code in my git repo is stuff I did as fun. I didn't care about being right, or care about memory issues or being thread safe or anything other than 'I wonder if...'
In that instance, and I suspect a lot of other people public where they aren't contributing to something using the repo code as a talking point is counter-productive.
Why did I do it that way? Because I wanted to see what would happen.
If I change it at that point then I'm either being disingenuous or taking away the aspect he wanted to talk about.
All that said, if I put my github url on the resume then it's fair game to _talk about_. My point is (same as the articles) using it as a filter is generally a bad idea.
Before the interview, I will check out your stuff and make sure I have compilers/interpreters for your favorite languages (as best I can identify them). Then I will do a combination of live coding, and talking about repositories that might have caught my eye.
In this kind of situation "Why did I do it that way? Because I wanted to see what would happen" Is a great answer. It leads into a discussion about what happened, and whether or not you would do it again (without waiting half an hour for you to work through a problem of my devising). I could not care less whether the code was good or bad if you can show that you analyzed the experience and learned from it.
Part of writing good code is having written bad code in the past. I get that. I'm a programmer myself.
Now, we do not use Github as a filter (as the article discourages). If you put your Github in your resume, I will use it to make the interview itself a more valuable experience for both of us. If you chose not to put your Github on your resume, then you will get the generic interview, and I might not have your text editor/IDE ready to go.
That said, my own presence on Github is pretty anemic, so maybe that's another form of bias!