• Posts
  • RSS
  • ◂◂RSS
  • Contact

  • GitHub Resumes

    October 20th, 2016
    tech  [html]
    In software hiring it's becoming somewhat common for people to look at your public open source code to help make the decision. This tends to be described as "your resume is now GitHub". [1] And you see people offering advice like:
    The problem is that while most programmers seem to understand and even embrace GitHub as the new resume, few if any seem to have actually put any thought or time into making their GitHub accounts look and work well as such.

    GitHub is more than just your social backup storage, it's your portfolio and it's public. You can't just dump everything there willy-nilly or your account is going to look like shit, which it probably does.

    And suggesting things like:
    The work you did a year or more ago couldn't possibly still be relevant today. If it is, you aren't working hard enough or learning fast enough. Get rid of anything you haven't worked on in over a year.
    This advice makes a lot of sense: if employers are looking at your GitHub account to evaluate you, and you can choose what to show them, you're most likely to get hired if you put a careful selection of work up. But the consequences of this are terrible! The more people follow this, the less useful-but-ugly code there is out there for others to learn from or adapt.

    For example, take my draw_heatmap.py. It is not good code. It's slow, not especially well structured, and not very easy for people to understand. I wrote it in a hurry, when I had an idea to make a map of Boston rents. I could have just shown off the pretty map, but I put the code up in case others were interested. Various people ended up running it for their own cities, which I wasn't expecting, but which I'm very glad they did. If I wanted to make my GitHub page contain only work that reflected very well on me, though, it wouldn't be up there.

    I know how to write good code, but it takes longer, and if I'm writing something exploratory with a primary audience of myself I'll generally prioritize just getting it done. I think this is pretty reasonable, appropriate for those situations, and I'd like code written in this manner to still be available for people to look through. When employers pass up people with messy GitHub profiles, however, they are hurting the norm that you open source as much as possible. I wish they would consume transparency more responsibly.

    (My day job is working on an open source project, which means that most of my GitHub activity actually does (I think) look pretty good. It's professional stuff, written within an organization that values and supports code quality. Someone who wants to see whether I can write good code can get lots of nice examples, so the GitHub-resume system isn't all bad for me.)


    [1] There are other problems with using open source code as a guide when hiring, like people with kids being way less likely to have the time for side projects to put up, and so decreasing the diversity of your hiring pool. I'm not trying to get into this here.

    Comment via: google plus, facebook

    Recent posts on blogs I like:

    Governance in Rich Liberal American Cities

    Matt Yglesias has a blog post called Make Blue America Great Again, about governance in rich liberal states like New York and California. He talks about various good government issues, and he pays a lot of attention specifically to TransitMatters and our …

    via Pedestrian Observations November 19, 2020

    Collections: Why Military History?

    This week, I want to talk about the discipline of military history: what it is, why it is important and how I see my own place within it. This is going to be a bit of an unusual collections post as it is less about the past itself and more about how we st…

    via A Collection of Unmitigated Pedantry November 13, 2020

    Misalignment and misuse: whose values are manifest?

    Crossposted from world spirit sock puppet. AI related disasters are often categorized as involving misaligned AI, or misuse, or accident. Where: misuse means the bad outcomes were wanted by the people involved, misalignment means the bad outcomes were wan…

    via Meteuphoric November 13, 2020

    more     (via openring)


  • Posts
  • RSS
  • ◂◂RSS
  • Contact