Hacker News new | ask | show | jobs
by mcphilip 4599 days ago
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.

[2]http://en.wikipedia.org/wiki/Entity%E2%80%93attribute%E2%80%...

2 comments

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.

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.

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.

Where can I learn more about #1? Sounds very interesting.
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.