Live data from Hacker News

The GitHub Job Interview

blog.gigantt.com

31–40 of 44 posts

Re: The GitHub Job Interview

#31
post #29

"Not all developers have existing online projects they can point to when you're interviewing them." After 15+ years of doing open source and being in Sr. Software Engineer positions where I've been responsible for interviewing hundreds of people, I'm convinced now that I would never hire anyone who doesn't have some sort of public online project. I don't care what it is, you must have some code to show.

I am pretty sure that majority of people doesn't have public repository. I don't have problem showing my code but it is not public.

Here is my problem with that statement:

You are saying that you only have code which is entirely private. This is most likely code you wrote for your employeer, which you can't show me anyway because chances are that it is NDA private. Or, you have code which you wrote for say, an iPhone app which you are probably never going to show to anyone. That is all fine.

However, you are also telling me that you've never integrated any open source projects into your code or relied on any non-commercial external libraries. Or, maybe you have done that.

But then I have to wonder why you've never contributed back to any of these projects that you've depended on. If you are a great dev, I'm sure you found them lacking in some way and wanted to contribute a bit back to them.

Thus, we've come full circle. Any developer that I would want to hire, has figured out that there is a massive ecosystem of open source projects out there. They are integrating them and contributing something back to them. They are drawn to these projects like flys to sh*t. These projects teach them new tricks because they are studying others code. They are drawn to give back to these projects because they are taking so much good from them. That is what makes a good developer in my eyes.

Here is a really good case in point example. Last night I was working with the amazing Underscore.js library, which I'm fairly new to. I found that I wanted to do something with it, couldn't figure it out and made a suggestion on how to improve it [1]. Someone from the community responded quickly, we had a bit of really positive back and forth and in the end I learned something new about the library. I expect that anyone I hire has the gumption to also be doing similar work.

Go fork some projects.

[1] https://github.com/documentcloud/underscore/issues/425

Re: The GitHub Job Interview

#32
post #29

Earlier quoted context omitted.

I am pretty sure that majority of people doesn't have public repository. I don't have problem showing my code but it is not public.

Here is my problem with that statement: You are saying that you only have code which is entirely private. This is most likely code you wrote for your employeer, which you can't show me anyway because chances are that it is NDA private. Or, you have code which you wrote for say, an iPhone app which you are probably never going to show to anyone. That is all fine. However, you are also telling me that you've never inte…

You'd miss a lot of really good people with that standard. I used to work at Amazon, so I'll use them as an example. (Keep in mind, it's been about 1.5 years since I left, so some of this may have changed.) Amazon has a policy that requires you to get open source contributions approved by legal. That is, legal has to review every commit you want to put into open source to make sure 'it's not in a competing product', reviews can take weeks, and when you ask a lawyer every product is competing.

The whole company is built off of Open Source, but there are teams the fork the projects into internal repositories (Perforce when I left) and put a bunch of Amazon-specific 'things' into them. As a developer there, I didn't use the Open Source sites, docs, or mailing lists at all -- I used Amazon's. We had wiki's, ticket queues, and mailing lists -- all internal to Amazon. Maybe the core team that's doing the forking and merging from the trunk would or does contribute back, but for any given project >99% of the developers at Amazon don't ever work on that codebase -- or with the codebase of any of these projects.

As a developer, we just have a 'team' somewhere that does. If something doesn't work in Tomcat, we don't go find the Apache page and file a bug, or jump on the mailing group, we file a trouble ticket with the team that owns Tomcat at Amazon, and they fix it. Maybe they go to the Apache pages and mailing list, or maybe they just see the line of code in the codebase and fix it, I have no idea.

Re: The GitHub Job Interview

#33
post #29

Earlier quoted context omitted.

I am pretty sure that majority of people doesn't have public repository. I don't have problem showing my code but it is not public.

Here is my problem with that statement: You are saying that you only have code which is entirely private. This is most likely code you wrote for your employeer, which you can't show me anyway because chances are that it is NDA private. Or, you have code which you wrote for say, an iPhone app which you are probably never going to show to anyone. That is all fine. However, you are also telling me that you've never inte…

I might "fork some projects" if I was interested in impressing you. I am not.

I can find any number of jobs without your approval or that of the "cool kids."

Thanks anyway.

Re: The GitHub Job Interview

#34
post #29

"Not all developers have existing online projects they can point to when you're interviewing them." After 15+ years of doing open source and being in Sr. Software Engineer positions where I've been responsible for interviewing hundreds of people, I'm convinced now that I would never hire anyone who doesn't have some sort of public online project. I don't care what it is, you must have some code to show.

I am pretty sure that majority of people doesn't have public repository. I don't have problem showing my code but it is not public.

That's not really latchkey's problem.

It's different for big companies (Google, Microsoft etc.) that have to hire by truckloads, but small, startup companies (say, Now, I'm not saying it's your problem, as you also need to be hired by only one of many companies so it's perfectly valid to ignore companies that have a strong preference for open-source contributions.

However, if you do want to be considered by such companies, it's a small investment to build a portfolio of open-source code on github.

I believe this is becoming more and more important because more and more startups are founded by people who grew up in a world where open-source projects and github are a norm, not some extraordinary event as it used to be just a few years ago.

Re: The GitHub Job Interview

#35
post #13
post #4

I've been mulling over the idea of writing a small buggy program, one that doesn't compile, and providing some test cases, then post it on GitHub as a first pass filter. It achieves several aims: 1. This approach scales. Send a prospective employee the github url and they can get started. 2. The programming puzzle can be solved in about 15 minutes. Kind of like a better Fizz Buzz. 3. The interviewee doesn't feel insu…

Why go through all this complication? Use bugs that have actually occurred in your app , repurpose those into coding problems, and see how the prospect solves it. You might be surprised that they fix the bug better than your existing employees (or you).

Production code baes are never trivial enough for a quick test. They usually require a deep understanding of domain.

Have you ever tried to fix an open bug on a GitHub project? It is non-trivial.

Re: The GitHub Job Interview

#36

Earlier quoted context omitted.

Here is my problem with that statement: You are saying that you only have code which is entirely private. This is most likely code you wrote for your employeer, which you can't show me anyway because chances are that it is NDA private. Or, you have code which you wrote for say, an iPhone app which you are probably never going to show to anyone. That is all fine. However, you are also telling me that you've never inte…

You'd miss a lot of really good people with that standard. I used to work at Amazon, so I'll use them as an example. (Keep in mind, it's been about 1.5 years since I left, so some of this may have changed.) Amazon has a policy that requires you to get open source contributions approved by legal. That is, legal has to review every commit you want to put into open source to make sure 'it's not in a competing product',…

I'm ok with missing those people, they already have a nice stable big company job they are happy at. There is a lot of value in that and I'd never want to take that away from anyone.

In high school, we were all told that in order to get into college, you needed to have extracurricular activities. I consider spending some time at night or on the weekends on an open source project part of the deal of being a software engineer. Not everything needs to be taught or done on the job. The people I want to hire make their own time to learn and grow.

Re: The GitHub Job Interview

#37
post #11

Earlier quoted context omitted.

Hi. The idea is great, but I ran into some issues. - it took me quite a long time to find the 'Claim all your identities' - it should be in the same place I edit my profile. - after I claim one account I don't have a link to go back and claim other accounts - something is wrong with handling bitbucket projects, it sees only 2 of my projects - if I go to 'Claim all your identities' for the second time, I don't see a l…

Thanks for your feedback. I'm going to add it to our backlog. - About the bitbucket projects, maybe the crawler didn't get all the links, you can send us projects to add going to "Missing projects? Add a project" - About the link to go to your profile, there is a tab named "go to your profile" on the main nav-bar - The progress bar needs explanations and also some work because is not working properly right now. - The…

> About the bitbucket projects, maybe the crawler didn't get all the links, you can send us projects to add going to "Missing projects? Add a project"

https://api.bitbucket.org/1.0/users/{{ username }}/

Re: The GitHub Job Interview

#38

"Not all developers have existing online projects they can point to when you're interviewing them." After 15+ years of doing open source and being in Sr. Software Engineer positions where I've been responsible for interviewing hundreds of people, I'm convinced now that I would never hire anyone who doesn't have some sort of public online project. I don't care what it is, you must have some code to show.

If I were being interviewed by you I'd have a question: "If you hire me, can you guarantee that either (1) I'll be contributing to open source as part of the job, or (2) the job will leave me with enough free time and energy that I will have both the time and desire to do programming outside of work on open source?".

If your answer was "no", then my follow up question would be "so basically you wouldn't hire someone whose prior career had been spent at companies like yours?".

If your answer to the first question was "yes, option (2)", I'd have some follow up questions probing why the job is not able to provide enough interesting and challenging work to fully engage me.

Re: The GitHub Job Interview

#39

Earlier quoted context omitted.

Here is my problem with that statement: You are saying that you only have code which is entirely private. This is most likely code you wrote for your employeer, which you can't show me anyway because chances are that it is NDA private. Or, you have code which you wrote for say, an iPhone app which you are probably never going to show to anyone. That is all fine. However, you are also telling me that you've never inte…

You'd miss a lot of really good people with that standard. I used to work at Amazon, so I'll use them as an example. (Keep in mind, it's been about 1.5 years since I left, so some of this may have changed.) Amazon has a policy that requires you to get open source contributions approved by legal. That is, legal has to review every commit you want to put into open source to make sure 'it's not in a competing product',…

I've been waiting on approval from legal for a diff viewing tool. It has been under review for over a year now. On the one year anniversary of the ticket I pasted in an ascii art birthday cake and there has finally been some progress. It is among the many reasons amazon loses great devs.

Re: The GitHub Job Interview

#40

writing code during an interview is great, but almost a 180 degree experience to writing code in real life. there are a couple of factors: * psych pressure * unrealistic timeline * googling is usually not allowed, whereas EVERYBODY uses it writing code in real life * editor/environment is usually not "yours" * etc.. hence the _way_ you choose to conduct a code test will, in most cases, matter a lot less than the actu…

for what its worth, at my last company once a candidate passed phone screening we would tell them that the in-person interview would include a one-hour coding assignment, and that they should tell us their preferred language and (free) editor/ide and we'd set it up. we also provided full access to google, and the tasks were reasonably easy (e.g. print out numbers in a square spiral, implement a duplicate file finder, that sort of thing). a depressingly vast majority still couldn't do it; contrariwise the good ones would have just as happily done it all on a whiteboard.
Post reply on HN