Ask HN: Why to startups put so much emphasis on GitHub profiles?

15 points by nsnick ↗ HN
Do people actually open source their best work?

Also, why do major tech companies never even ask for and put no emphasis on GitHub or BitBucket profiles?

11 comments

[ 4.8 ms ] story [ 39.5 ms ] thread
It may be because startups are looking for experience with specific technologies and not good software engineers. Startups generally don't want (or don't have any money) to train their engineers.
All of these are generalizations with a kernel of truth. In real life, I imagine the frequency of occurrence of various hiring techniques falls into something like a normal distribution. Similarly with hiring results.

My thoughts:

1. It's perceived by some to be a maximally objective and efficacious measure of skill and experience. This might be true in principle, but in practice, reading code carefully takes a tremendous amount of time and making judgements about someone's work based on a commit log probably doesn't happen much. My intuition is that this gets more lip service than anything. I imagine employers are looking for lots of green boxes and lots of commits, if anything.

2. All the time. The virtues of open source software often outweigh the perceived loss of revenue and control.

3. The interviewers just don't have the time. They are too busy going to design meetings. Or doing dozens of interviews with a minimum of prep or decision time.

The real problem I have seen is that if a startup does not see a particular technology in your open source work, they think you have no experience with it.
I do find it a bit annoying that, on top of the expectation to even have open source work readily available to criticize, there's an expectation that any particular project should act as a de facto resume.
It's not all necessarily to see your code & best work - it's also a tactic to gauge this person's participation in the open source community, their contributions, and passion for programming outside of the 9-5. These intangibles are generally a bigger deal to startups versus large companies, and therefore a more useful indicator.
(Arguably) the most direct way to evaluate a software developer's skill is to read code he or she has written. Since most programmers can't share code they've written for their employers, open source code is the quickest and easiest way to get a sense of someone's abilities without administering a coding test (which many engineers consider insulting or a waste of their time).
In my past experience with hiring the first few engineers at tiny startups, I viewed Github profiles valuable for the same reason Facebook, Stripe, et al didn't need product managers for their first [x] years: full-stack developers with product minds are tremendously valuable for startups. An active Github profile is a great way to flush that trait out.
Hiring is not an exact science. The question is not whether looking at GitHub profiles is a good way to evaluate skill. The question is whether it is better than what would have been used instead. In the absence of objective evaluation criterias, people tend to use superficial ones.

To put it bluntly, it is more fair to judge candidates based on Github profiles than whether they are beautiful, looks good in a suit, possesses a firm handshake, are in shape or smiles a lot during the interview.

This very crud way of looking at things is a very effective tool for pragmatism. A little off topic, but It was the most effective way to get me out of micro optimization and over engineering.
So much agreed. Not sure if you meant crud or crude but I'll go with either. Just knowing this gives me the option to explain that my professional output has been proprietary, so I don't maintain a busy github profile.

It's not a problem in practice.

Startups care more about the short term. If it takes six months for a candidate to get up to speed a startup will probably pass on them regardless of how awesome they will be in the future. Larger companies don't have to be so short term focused.

Google, for example, often hires inexperienced developers who are smart and great problem solvers. They know they can rapidly, over a period of 6-12 months, turn an inexperienced dev into a good dev.