This post is a translation of Ton CV ? c’est ton Github ! Et mon cul c’est du poulet ? (I don’t Need Your Resume, I Know Your Github Username! Are you F#@ing Kidding me?) I wrote in November 2013.
I don’t need your resume, I already know your Github username.
Back in 2013, I discovered David Coallier Github Resume, a small Web application that generates a resume from your Github profile and activity. After the Pages that allows you to host a static Web site from a Github repository or generate one from your project
README, a coder resume was the logical next step with using the users’s public data.
Despite being good, the Github Resume drove me mad. It’s a another step in the “we won’t hire tech people who don’t have a public portfolio” direction, a trend that is not limited to the startup world anymore. After the same happened with blogs in the Web / marketing / project management space a few days ago, with very poor result, here comes the computer engineer resume 3.0. It won’t end well.
A bad developer? He has a Github account, commits something then and does a pull request. A good developer? He has a Github account, commits something and send a pull request. But he’s a good developer.
In the past 10 years, I got hired for my blog twice. These are not experiences I want to remember about when I retire. If you ever meet someone who tells you “I don’t need your resume, your blog is your resume” or mention your blog as a reason for hiring you, run away unless you’re in the content marketing field.
Both experiences were terrible. I’ve even been told it was a pity that my blog was smarter than me. It’s hard to hear, but it taught me 2 things: both companies sucked at hiring people, and I sucked for picking a job because the boss flattered my ego.
There’s a world between analysing and delivering. Analysing needs you to step back from the problem you’re working on, which you can’t always do in the real world. A blog provides data about the applicant: analysis and writing skills, state of mind, ability to summarise or find information, but it’s not the applicant.
This “your Github is your best resume” trend pisses me off because I know how it’s gonna end: “This is how it will be at the end of the age. The angels will come and separate the wicked from the righteous 50 and throw them into the blazing furnace, where there will be weeping and gnashing of teeth.” Mt. 13,49-50.
You can’t limit professional experience to a blog or a Github account. It’s both stupid and dangerous for your company. Many very smart and skilled people won’t write about their job or contribute to open source projects because they don’t feel it, or because they chose to have a life outside of their job. Unless sharing is in your company’s DNA, you can’t blame someone for this.
Having a look at people’s Github account before hiring them is useful though. IT recruiters finally understand it as you get many interesting information about the applicant.
An active Github account tells that its owner contribute to some open source projects after they leave the office. It tells that they stay up to date on their job technical evolutions. In a world that moves faster each year, it tells they’re willing to learn and are passionate by what they do.
An active Github account tells how their owner solve more or less complex problems, how they understand security and performance aspects, or how important they consider testing and writing documentation. For more senior profiles, public projects are a serious replacement for the usual technical test.
If the applicant contributes to other people’s projects, an active Github account tells how they work with code they didn’t write and if they can follow rules they didn’t set like coding style, test coverage or documentation.
Unfortunately there are many things you won’t find in a Github account which are more important than writing code after office hours.
An active Github account doesn’t tell how their owner behave inside a team or a company. Even large open source projects organisation is far from the traditional enterprise one.
An active Github account doesn’t tell how its owner adapt to enterprise requirements: can they work 5 days a week, at the same hours as other people in the company? How’s their relationship to the hierarchy? Do they deliver on time?
An active Github account doesn’t tell how its owner behave and code when they fell down or lose motivation. Open source is great because you contribute when you feel to. If I don’t want to code on Publify for 6 months, I can do it without making the whole project at stake. A company can’t hire someone who writes great code 3 days each month and plays Minecraft all the time (unless he’s a sysadmin and has automated everything).
Github as a resume limits their owner professional experience to what they do outside of the company. It’s a nonsense.
It doesn’t tell who they’ve been working for, on which problems, with which challenges, tools and people. It doesn’t mention how many year they’ve been working, and for how many employers (who said job hopers?).
It doesn’t tell either their owners social skills. Are they a total nerd who only leaves home to trash his week old pizza boxes, or does he have a life and a family? Everything depends on what you’re looking for: an engineer able to take the necessary distance to solve complex problems or someone to code your Wordpress site and STFU.
It also raises more philosophical questions.
I love how startups are place to build teams made of people from different culture, experience and state of mind. Making the Github account a must have for recruitment destroys that diversity to the point every company will soon look alike. Companies will leave behind very skilled people who’ve already faced the issues they’re going to face, and solve problems they will meet someday. It will prevent a nice melting pot between the “Github coders” and people the startups need but don’t even know about. In the end, the one that will suffer from it is innovation itself.