8 ms·
I do a lot of recruiting, for both paid and volunteer coding roles. I've been hiring for about 13 years, and I've been coding professionally for about 25 years.
by KiwiCoder 10y ago
I do a lot of recruiting, for both paid and volunteer coding roles. I've been hiring for about 13 years, and I've been coding professionally for about 25 years. Before that I coded as a hobby, from about age 11.
Speaking from this experience, and as someone who reviews on average 20-50 coder profiles a week, the public commit history of a coder is almost never a significant factor. I don't see any trends that indicate this is changing, either.
The vast majority just don't have much to show, having spent their years working behind walls on closed software.
Instead of relying on a public portfolio that in most cases won't exist, I rely on talking to these people directly, programmer to programmer. If we can code together, on the actual code they would be working on, that's about as good as it gets.
In other words, I rely on my experience as a coder to help make what are, ultimately, subjective judgement calls.
- sotojuan 10y agoI can confirm from the employee side. I've worked with 40-60 people total that I at least sort of remember. Sure, that's not many people and I'm still new to the industry, but I can tell you that of all of these people only one or two have significant public GitHub activity. All the rest have empty GitHub accounts (aside from work). These are all well employed programmers at startups. They're doing fine. The importance of "side projects" is overrated on the internet.
- cmrdporcupine 10y agoI used to be more into having side projects, and I continue to play with things, but due to employee IP contracts it's not really feasible to release them. My employer owns my brain, and while they can give permission to release things here and there, there are restrictions and processes to go through, and it really inhibits spontaneous contributions. And I work at a major tech BigCo(tm), with a lot of smart software engineers, the majority of which are under similar restrictions. Frankly, any potential employer who expected to see said contributions from me and use it to judge me or my coworkers as candidates would be making a poor decision.
- emilecantin 10y agoI've always fought such clauses, or if it's a standard contract that can't be changed, I made sure to get a written exemption stating that work done on my hardware, on my time, on my ideas (not anything the company is involved with) is mine. I understand the company wanting to protect itself, but I have to protect myself too.
- ryandrake 10y agoOften these intellectual property terms are mandatory conditions of employment. I always read here about people "fighting" these terms but nobody's ever willing to go into actual detail about what they did that was successful. At past employers I've tried the cute "strike the clauses out in your employment agreement and initial them" trick and that has always been followed up by a very stern "sign it unmodified or GTFO" talk from HR/legal. Responses to push-back are always along the lines of this is our policy and policies can't be changed. So how did you get this "written exemption"?
- bphogan 10y agoI'll chime in. I have always asked for it politely in advance as part of the negotiation process, before there's a contract. I didn't try to strike stuff out. I specifically made it clear throughout the process that there are some things that are important to me that I wish to continue doing. It's usually never no when I ask because the outside work I've done is often the reason we're talking in the first place. When I frame it that way, they're usually able to find some exemption. The conversation usually starts with my soon-to-be manager about me wanting to work on projects on my own time without using company resources, that don't directly compete with the company's business. I've been fortunate enough that I've never been in a position where I've only had one offer I've had to take, though. If they said no, I was always able to go to another offer and say yes. Some companies literally do not budge though. But I have to look out for me and my family. I do side projects mostly to learn stuff and help people. I also love writing about technology. And, for example, my current job doesn't really have a place for me to do Elm and Elixir, but I think those things are important skills for my future. If I take a job that doesn't let me do those things, and they decide to let me go because reasons, now I'm on the market with out-of-date skills and that scares me. It also scares me to work for a company that's against me investing in my skills on my own. I think that if I was in a situation where they wouldn't budge on that, I'd have to walk away and take my chances as a freelancer at that point. I mean, I'd rather have my risk spread out among a few clients than on a single employer who wasn't willing to negotiate.
- misingnoglic 10y agoSide projects are mostly important for new grads or students looking for internships, just to show - "look- I can do code that's not just my data structures homework assignment."
- shams93 10y agoYou would think, I've been in the industry 25 years and my side projects are still my biggest sales tools when it comes to changing jobs or joining projects. Makes a huge difference to be able to show that I stay constantly on top of the latest changes and best practices and apis even when my current day job may be using an outdated stack.
- mkaziz 10y agoHow much extra time investment does it take you to do that?
- bunderbunder 10y agoThe biggest mishires I've experienced were generally students with a whole lot of history in their GitHub accounts. I haven't done a thorough post-mortem on what was going on there, but I wouldn't rule out plagiarism or an ability to make small tweaks but little sense for dealing with a larger, more complex project. What we found was the way you figure out whether or not someone with a strong GitHub history is going to be a good hire looks more-or-less exactly like the way you figure out whether or not someone with zero GitHub history is going to be a good hire. All focusing on GitHub really seems to get you is the ability to cast an artificially narrow net.
- deepaksurti 10y ago>> The vast majority just don't have much to show, having spent their years working behind walls on closed software. So how do you handle the minority who have much to show on Github? Do you use the same or different process for this minority? If the same process, then IMHO, it is a one size fits all which does not seem right. Sincerely wish to know your experience/thoughts in the minority context, a Minority Report if we can call that :-)
- garysieling 10y agoIn the case of people with a portfolio on github, it's still somewhat hard to tell what they actually did in the projects, e.g. if they build an app from a template, it looks like a ton, you also can't tell if the resulting thing actually works.
- Bartweiss 10y agoFor me, I'll certainly look at a Github if someone links it or mentions their OSS work on a resume. I'm looking for positive evidence that a candidate takes on substantive tasks and writes good code, which means looking to wherever a candidate has put their effort. It's never the only factor, so I have no problem saying I'll look to Github iff it has content.
- x1798DE 10y agoI think this is mostly accurate in terms of using github as a way to determine someone's ability to do quality coding (though if someone didn't do well at "whiteboard" coding but had a long history of contributing quality code on github, I'd probably weigh the github code higher), but it seems to me that the benefit of github contributions is more on getting your foot in the door and establishing a reputation. If you are a solid contributor to well-known projects, it can be very helpful in networking and it's useful in separating you from the pack in the early "resume review" stages. I don't really know if the expected value of building a reputation in an open source software community is higher than the opportunity cost of other things you could do to help your career, of course. I'm just not sure if "I really don't make hiring decisions based on the code on a github account" is the right metric in this case.
- eikenberry 10y ago> [..] it can be very helpful in networking [..] This is a very important point mostly missed. My first job out of school was due to networking related to a free software project I was helping out on. Networking is the best thing you can do to help your career and working on free software projects can be a big help. Though this is a bit off topic from the original post about having a github portfolio. I do think a portfolio can be helpful and is worth spending some time on, but I don't think it is necessary.
- shubhamjain 10y agoBut if you have hundreds of initial applicants to sift through, the one having some open-source contributions would surely standout. Even considering that it won't affect your final say, reaching the interview stage is definitely advantageous. I don't agree that lack of Github commits would ever be a deal breaker in hiring, but having them does signal a positive factor provided that the projects and contributions are purposeful.
- flukus 10y ago> But if you have hundreds of initial applicants to sift through, the one having some open-source contributions would surely standout. If you have hundreds of candidates to sift through then you don't have enough time to look through their github history in enough detail to be worthwhile.
- svdree 10y agoIf this line of thinking ever takes off, it will be just another one of those meaningless rituals you have to go through to signal that you're part of the club. Polish your resume, dress up nicely, read 'cracking the coding interview' the night before. There might actually be a great idea for a new book in there: "How to fill up your GitHub account with random crap so future employers think you're really really passionate".
- gaius 10y agoIt already happens - there are a ton of repos out there that are just an unmodified clone of a few Javascript (always Javascript) projects.
- angry-hacker 10y agoCan confirm. I tested it out myself and created a bogus LinkedIn profile to match with it. I got loads of recruiters to email me, wanting to have a chat. My plan was to get free plane tickets and hotel to visit U.S, but I didn't find enough time to bullshit them before they actually invite me, but it seemed it's possible. I'm below average programmer and from Europe. Probably I wouldn't have either attends the actual interview, lied something happened or go there and let them realize I'm shite. No, I wouldn't feel bad about it all if I'd have pulled it off.
- jghn 10y agoWe see this a lot. "Please look at my github". Ok, so all I see are a bunch of forks with at best some trivial commit. Now what?
- restalis 10y agoNow it's expected of you to be impressed and to make a generous offer, of course! (Any further delay with any sorts of interviews is simply ludicrous, you see.)
- curtis 10y agoI've got a fair amount of code on GitHub and on my website, but judging from my most recent job search, hardly anybody ever looks at it. And it certainly doesn't seem like it does anything to get you through the first sourcer/recruiter hiring layer, which almost entirely consists of people who are not engineers. On the other hand at the last job where I was on the selection/interviewing side of things (somewhat peripherally) I did look at GitHub projects.
- thibaut_barrere 10y agoThere are two sides of the coin here, which should not be opposed in my opinion. I've done a fair bit of recruiting for clients willing to build technical teams (developers / data engineers / data scientists): my experience is similar to yours in that the large majority of the technical candidates I've been interviewing have no visible trace on GitHub (either because they worked on closed source, or because they are out of school without not a lot of personal drive to work on OSS). But at the same time, as a freelance consultant for the last 10 years, having work online available for everyone to see or use (OSS or other) has driven a lot of valuable leads to me (e.g. on my niche doing Ruby ETL http://www.kiba-etl.org/ http://www.kiba-etl.org/). Last note is I agree with the premise of the article that we are shifting away from "week-end contributors". For me OSS is something I work during the day, even as a single-man shop, and something that is (if properly managed) bringing in a sizeable part of my income.
- JoshTriplett 10y ago> the large majority of the technical candidates I've been interviewing have no visible trace on GitHub (either because they worked on closed source, or because they are out of school without not a lot of personal drive to work on OSS). Or because they work extensively on OSS projects that don't use GitHub.
- thibaut_barrere 10y agoActually no (not in my case, I mean! YMMV). Something I can tell with certainty is that in my recruitement channels for the last 2 years, people either do OSS on GitHub, or are not doing OSS at all.
- JoshTriplett 10y agoThat might be true in your recruitment channels, but in general it's a problematic assumption. Many prominent Open Source projects don't use GitHub; in particular, that applies to those large enough and/or old enough to have and maintain their own infrastructure. I've run into that problematic assumption a few times, and it seems worth calling attention to.
- cr0sh 10y agoHere's a question for you as a recruiter, from me as a potential employee: How do I find a recruiter like you? Right now, I work with two different recruiters, at two different agencies local to me. Both have placed me in great positions; my current position is one (and I am not looking for a position currently). But say, in the future, I want to find a recruiter who knows software development, from the low-level nuts-n-bolts (coding), to design, deployment, business, etc - what would be the best way I could find that person? I think having a contact like that might be valuable, since not only could they recommend the fit, if they serve as an initial "gatekeeper" to an interview, but they might also offer tips and other advice helpful for positions. I'm not looking to replace my current recruiters; both are great guys and work well with me. But augmenting them might be worthwhile.
- KiwiCoder 10y agoI'm easy to find. Finding someone local to you, well, you'll have to ask around. But how do you know if the recruiter is qualified to assess coding skills? >> Pretend you're a team leader interviewing a junior coder.
- segmondy 10y agoI use GitHub only to see if someone has a side project and their interests. Never to judge their code quality. I use GitHub to store code when I'm experimenting or teaching someone else.
- yoaviram 10y agoAs a person who has been recruiting software engineers for the past 12 years, and quite picky about it, there are two signals I'm looking for at the first stage of the funnel: LinkedIn (more specifically if we know anyone in common who can endorse you, and your recommendations), and your OSS profile. The only thing I use a CV for is to look up your contact details. The next stage is all about 1on1 conversations and pairing sessions.
- EliRivers 10y agoYou seem to be excluding a huge pool of highly-skilled software engineers. There surely must be a way to not do that.
- kbart 10y agoProbably that's how "there is huge programmers shortage!" myth starts. I don't use LinkedIn and will never use it as any other products that rely on dark patterns and disrespect for privacy. Problems with OSS I've written in my other comment. And I'm really not in minority -- most of very good programmers I know are like this. So sorry, but as a requiter you are only doing disfavor for yourself relying on minor pool of candidates.
- bussierem 10y agoAs someone who is about to re-enter the job market (moving cross country soon, employer won't consider remote options), I cannot tell you how happy I am to read something like this, and all the agreements. I have almost no online presence for github, partly because of the "walled software" you mentioned. This helps alleviate a lot of stress I had about not finding jobs because of my github profile. Thank you! :)
- morgante 10y agoSeriously, I had to stop reading this article after the ridiculous hyperbole of the first sentence. Most things that most developers work on are private. More importantly even when the code isn't private, the context and reasoning behind it is often far more important than the code. Resumes tell a story, code is just data. Whenever I've hired people, GitHub has never been a significant factor. It is, at best, a minor boost (if someone has a bad resume but a prolific GitHub, I'll give them an interview). It's definitely not enough to ever get hired. Even as someone who has been relatively active on GitHub in the past, it was never an important part of my job searches. My resume is a lot more important.
- wccrawford 10y agoI think you've hit the nail on the head here. I also use someone's GitHub profile as a way to give me a reason to interview them, and some things to talk about in the interview. I also use their resume, and if we give them a small project, the results of that.
- mderazon 10y agoI see having a great public profile more as a sufficient condition than a necessary one. Meaning I wouldn't rule out someone if they didn't have a good public profile, but it could help the person if they did have one.
- zaphar 10y agoThe value isn't the commit history, the value is the network of people you build up while creating the commit history. That network doesn't evaporate when you change jobs. That network will likely help you land your next job.
- reedlaw 10y agoI'm concerned that many programmers who use mostly OSS (e.g. web developers) never submit a single patch to any of the multitude of projects they benefit from. Clients save millions of dollars because dev agencies leverage tons of free/open-source software. If programmers do a proper job they should routinely come across bugs or incompatibilities in at least a few of the myriad gems, node modules, etc. What could be more natural than for the developer to fix the bug and send a pull request back to the maintainer? When looking at candidates I almost always find some correlation between a meaningful public commit history and quality.
- watwut 10y agoMost small open source projects ignore pull requests. So, it is not really worth it.
- juwiwoowiwuuw 10y agoI'm not so sure about this. My experience with contributing to (smaller) OSS projects on github have been mostly positive. However a few projects won't review/merge patches possibly because they've been abandoned.
- reedlaw 10y agoIn that case I'd make my own fork and leave it there for anyone else who may have the same issue.
- jghn 10y agoWe use it as an initial screen, if it exists. If it does not, no problem. We fall back to more traditional means.
- paulddraper 10y agoPublic work is just a bonus. Like, "oh, here's some stuff you've done. I can look at this." If someone worked at Snapchat, you have some context about what industry they were in. If they worked somewhere unknown, it takes a couple more questions and you're at the same place
- BadassFractal 10y agoCan confirm this as a hiring manager as well. Even if I do find Github activity, or even better strong OSS contributions, experience shows that those are generally terrible predictors of the candidate's ability to work in a team in a fast-paced continuous delivery style workflow. Can also confirm that most Github accounts are made of a dozen forks of existing projects with a trivial commit or two slapped on top. Also doesn't tell me much about your proficiency.
- speby 10y agoOn a hiring and a being-hired perspective of my own, I agree with you.
- muyuu 10y agoLong may this continue, because otherwise the implications for privacy and anonymity rights are extreme. In some concrete fields like web/SNS, I believe completely surrendering your persona online is already a requirement. Let's hope this doesn't spread.