Not every programmer likes to share his side-project code on public places like GitHub - for many reasons. Or pullrequest to some opensource mess. Code you write and problems you solve at work usually can't be shown on GitHub either.
So, this "show me your GitHub" thing for me is no different from "show me your Facebook, wait what, no FB account??" experience with non-technical HRs ;)
Conventional resume is totally OK for a first step in recruitment, I don't understand the need for extra fanfare.
Resumes are extremely easy to exaggerate or fabricate. I haven't seen fake github profiles yet (and I suspect they would be more trouble than they are worth).
I am often brought in on the hiring process to vet peoples technical skills. I used to just try to ask questions in the hour or two I got with the person, this seemed no better than flipping a coin. Even if the person was honest and we were both talking about the same skill, but how do I know that their experience with that skill is applicable? Now I insist on seeing a portfolio of some kind for coders. A Github, Bitbucket, Sourceforge or any other publicly viewable body of source will do.
15 minutes with someones code is a much better predictor of skill than even several hours of discussion. It costs a lot less too.
Very recently, a close friend was looking for a job (as a junior dev - focused on web). After applying and getting rejected, we decided to try a different approach - he basically gave up and decided to the following:
1) added buzz keywords in his resume
2) hosted an instance of gitlab and took various open source projects (stuff that was not popular, but had enough polish), modified them and uploaded them.
After a week, he was able to land multiple interviews. While he did get called out once, almost all engineers/non-tech hr didn't bother calling his bluff.
I am not suggesting that you should lie on your resume or steal open source projects, just that depending on one factor (like github, or resume, or white boards) is futile and that tech hiring in general is broken.
> While he did get called out once, almost all engineers/non-tech hr didn't bother calling his bluff.
I see plenty of GitHub profiles that are filled with forked/starred projects from other people, and nothing of substance.
I don't bring it to the candidate because it is worthless and there are more interesting things to talk about. But that doesn't mean I didn't see it ;)
Actually I have never once in my life see a good github profile.
I don't like this notion of having a "good" GitHub profile. GitHub started off as an easy place for me to dump code, no matter how crappy. Dumb ideas, samples from learning, incomplete experiments, whatevs.
Then I noticed that I had started censoring my code krapola. I was sepf conscious about the code I was making visible, as I didn't want to be judged. Then I decided that lame. Now I shamelessly put garbage on GitHub, too.
Coding poorly & having fun trumps curating a collection fancy schmancy artisinal repos. And I've also learned that my good code often lives at work, and never makes it to GitHub.
I'm the same way. I removed a lot of old stuff from my early days because I was afraid I was going to be judged on it. Now I don't care. GitHub is my dumping ground for everything. I start a new project almost every time I want to learn a specific thing so I have lots of incomplete projects on there simply because I move on once I learned the goal task.
Unfortunately like most people all the clean and polished code lives in private work repos. All those things I learned from the unfinished repos is being used in work code. Oh well.
Noone gives a f* about the code you have in your github. Noone will read it ever.
When I say a "good" profile. That means you put a link in your resume to ONE project you want to show. The landing page is a README with a paragraph to explain what is the app, a quick start, and a few screenshots.
If you've got a link to the website (or desktop installer) AND there are a few icons of external integrations in travis-ci/appveyor/unittestthing/packager then your repo is absolute perfection. =)
I have a self-hosted Gogs instance for all the stuff that I want private (either because it's shit or because it's really personal information that I don't want to put on anyone else's computer, including GitHub's).
> I see plenty of GitHub profiles that are filled with forked/starred projects from other people, and nothing of substance.
Though I haven't interviewed candidates for a long time, I happen to be
curious about somebody from time to time. The very first thing I do watching
their GitHub profiles is to filter-out all the forks, only leaving "sources"
(how GitHub calls them).
haven't seen fake github profiles yet (and I suspect they would be more trouble than they are worth).
There are loads, usually with a fork of a couple of popular JS libraries, maybe a couple of commits but no PRs. Once word leaked out that having a Github was "a thing".
I wonder if you would think that about my github profile. I don't have any JS, but I have forked a few C and C++ repos to make minor changes and hold them until upstream accepted them. I don't think I have deleted any of them. Then I have a few experiments answering questions I wanted answered.
It is not particularly hard to determine if fork n` fix is the reason for the repo. A search for the name of a project will find out if it is a truly lazy copy. Then asking a few questions about why some class or function deep in the code does a thing can determine at least the level of motivation of the copier.
If I can ask an unlimited number of questions about the code and the copier can answer them competently does it matter if they copied? They are competent in the code they pointed me at.
It is hardly a perfect system, it is just better in every way than only an interview.
Sure, but these ones are definitely box-ticking exercises, I guess some "thought leader" on LinkedIn said all the best companies only hire people with Github, and off the masses went. There are loads of placeholder "tech blogs" too.
I have years and years of experience in software, I have a half dozen or more non-work projects I've contributed to or solely developed, some involving hundreds of hours of dev work, most of them on github. None of those projects are public though. And I suspect a lot of other developers are in similar situations. Public contributions on github usually fall into one of two categories: contributions to big open source projects (rare) or pet projects of little substance (common). These are just some of the reasons why using github as a resume is extremely fraught with difficulty. If you're lucky then it works well, but chances are you won't be lucky.
So, this "show me your GitHub" thing for me is no different from "show me your Facebook, wait what, no FB account??" experience with non-technical HRs ;)
Conventional resume is totally OK for a first step in recruitment, I don't understand the need for extra fanfare.