StackOverflow Reputation As A Hiring Metric
I’ve been using StackOverflow nearly since it started back in 2008. I remember when it first started there didn’t seem to be much going on and so I forgot about it for a time. Then, one day, while searching the interwebs for an answer to a programming question, SO was the first hit in my search results. At that point I went back and started using it regularly–not only to find answers, but to offer my own experiences and expertise to help others. It’s a great site and I have nothing but high praise for its founders, Jeff Atwood and Joel Spolsky. The entire StackExchange network is an impressive engineering achievement.
Since that time, I have racked up a few reputation points and I spend a decent amount of time on the site nearly every day trying to make a difference. What difference, you might ask. Well, I think participating in our community should inspire everyone to learn and to share. StackOverflow is one of the best places to do that. Sure blog posts and the like are helpful too, however, the nature of StackOverflow is to provide helpful and concise answers to questions. It makes it a perfect place to make a true contribution without having to go to a lot of effort. I find the best answers to be the ones that cut right to the chase either citing another reference or providing a snippet of code that gives you exactly what you need. Of course, copying and pasting from SO means I have to strip out those damn dots all the time, but I digress. (Yes, I realize that ship has sailed. Please don’t start a dot vs no-dot war in the comments. Use dots if you want. I don’t care. Just don’t insist that I do the same.)
As anyone who has spent any time at all on the site will notice, the higher your reputation, the more privileges you obtain. Eventually you become a moderator. You can edit other’s posts. You can close poor questions. You can delete poor answers. The community ensures that you are abiding by all of the rules–and, frankly, there are many of them. Take a look at the meta site if you think I’m joking. Don’t worry if you don’t know them all, though. If you mess up, the community will correct you. You can count on that like clockwork. I know that sounds a bit sarcastic and it probably is. I’ve been moderated before and I didn’t like it. However, in the end, you can’t argue with the results you get with StackOverflow and the people who moderated me were right. They were enforcing the rules–which is, as it turns out, good for everyone. With programming related questions, SO is nearly always the first hit in a Google search. And when you get to the site, how often does it contain the exact answer you were looking for? I would say for me personally, that metric is probably in the 80 to 90 percentile. The StackOverflow philosophy works and you can’t legitimately dispute that.
So Why Should I Care?
If you think that going out and getting the highest reputation out there is a worthy goal, I will go ahead and deflate that notion by pointing you to the site’s über contributor, Jon Skeet. His reputation is up over half a million at the time of this writing and it just keeps going. You couldn’t catch him now if you tried. Jon has behind him a ton of momentum because he has made so many contributions. His reputation increases in large quantities every day. Even if he stopped contributing right this minute, his reputation would continue to grow on indefinitely as long as the site was still going. It’s like compounding interest at this point. If you figure that he started (according to his profile) 4.5 years ago (sometime around the site’s beginning) and his reputation is almost 550K, he would be averaging about 335 reputation points PER DAY! That astonishing! I’m lucky to achieve that in a month. Now, you can’t break that down into how many responses he’s providing per day, but you can be sure it’s a lot. As I said, Jon is the über contributor.
On the other side of the equation, though, for some people lurking on StackOverflow is sufficient for their needs. They just take what they need and then they’re gone. That’s great for them, but I submit to you that participating in the community means you need to get an account and start responding instead of just consuming. No, you’re not likely to achieve Jon Skeet’s reputation. Of course setting Jon as the standard is not right. There’s even a meta question about Jon Skeet that elicits comments about Jon in a Chuck Norris Facts format (Excerpt: “Jon Skeet can divide by zero.”, “Jon Skeet coded his last project entirely in Microsoft Paint, just for the challenge.”, etc.). It’s hilarious and you should take a look. But that’s beside the point. While reputation is the metric–the currency of StackOverflow, if you will, it’s a currency that is only accepted in the community. Nobody will offer directly to pay you more money if you achieve a higher reputation, however, indirectly it may.
What Does It Mean to Use StackOverflow Reputation As A Hiring Metric?
Currently in our industry there seems to be plenty of work going around. Finding help on programming projects–and I don’t mean just iOS projects; any programming projects–is a bit of a challenge. Developers are more scarce than ever. These days though, when you’re vetting someone to work on your team you still have to consider carefully whether that person will be a good fit with your philosophy. Because of this, the traditional resume has lost value when presented by itself. It doesn’t tell the whole story. The question to your potential employee or contractor has become, what have you done? How would I know your work? Can you show me? If they don’t have a publicly accessible answer along with the resume, the answer becomes suspect. If, instead, they point you toward community contributions, you have a tangible sense of their value. Community contributions matter immensely.
I can hear some of you now, though. You’re saying, yes, but isn’t it true that those who can’t do, teach? Isn’t that what people on StackOverflow are doing–just teaching? My answer is a resounding NO! Look at the contributor’s answers. You can tell the difference between pre-cooked (or half-baked?) responses and ones that come from experience. It’s very plain and if the responses are bad, they get mod’ed down. And if you pay close enough attention, you’ll see that some of the contributors are major players. I’ve personally learned a ton from contributors who are actually seasoned Apple Engineers–people who know the internals inside and out–not because they read about it or heard it might work some way, but rather because they actually wrote the code behind the technology.
In the end, I think a person’s StackOverflow reputation is directly correlated to their philosophy about community and the notion that we should all pitch in and contribute. I want to work with the people who believe that helping others out of the overflow of their own experience is important. Keeping it all to yourself isn’t beneficial to anyone.
Just as in life, the reputation you build matters. I suggest that if you are spending your time just consuming the great resource that StackOverflow is, you should consider a new view of things. Consider how you might contribute and use your own experience to help others in this great community of ours. And keep in mind that if I need your help with a project, I’m checking your StackOverflow profile to see how you’re contributing to the community. I think it is a positive thing to consider StackOverflow reputation as a hiring metric. You don’t have to have to be Jon Skeet, but the difference between no or little contributions and a noticeable effort will make a difference in my mind. It should make a difference in yours as well. Until next time.
You may also find StackOverflow Careers an interesting site for posting your experience or listing a req you’re trying to fill. They do a good job at vetting both sides of the hiring equation. Take a look at http://careers.stackoverflow.com/.
If you don’t have an account and want one, email me at matt at cimgf dot com. I have one invitation remaining at this time. (I’ll remove this remark once it’s claimed.)
Disclaimer: The thoughts and opinions expressed in this post are mine alone. I have no affiliation whatsoever (other than being a regular contributor) to StackOverflow, any Stack Exchange sites, or StackOverflow Careers.
Great article Matt. I’ve been working on my 1st “real” app for iOS (I have 2 “Hello World’s” in the App Store) and have found Stack Overflow to be invaluable in my development. I am new to iOS programming as of last year so I didn’t feel comfortable posting anything on SO, but you bring up some good points that everyone should contribute and not just lurk. I have been a lurker, and learned a TON from it, but now that I feel more confident in my ability I need to come out of the shadows and contribute. I’m not doing anyone any favors by not sharing my own experiences, and as you said, it is a community. So thanks for the proverbial kick in the butt, I will start contributing today! :-)
Like Michele I’m also working on my first app. I can’t even begin to show my appreciation for Stack Overflow – I’d be lost without it. At the same time I’ve been pretty intimidated by the thought of posting a question on the site because I’ve seen the repercussions of posting a bad one. Anyway, I did finally ask a question, and it was well received. And actually the responses I got did not answer my question, but pointed me in the right direction for me to research and answer my own question (and post it on SO).
Anyway, I think stackoverflow is amazing, but it does take experience to even get to a level where you can ask a question on the site, which I think is a good thing!
I have a score way over 10,000 and put it prominently on my resume, which I circulated in January after being laid off. I was disappointed that of a dozen or so people I talked to, no one mentioned it. In fact, its something I’m quite proud of, and often when people would ask me a vague question like “How do we really know you know iOS”, I’d say “Go read my answers on StackOverflow”, which I’m pretty sure no one did (after all, that would take time and initiative).
That said, I still participate, and now tend to be more picky about the questions I answer (and let the people with lower points get the easy questions). I get great satisfaction from a simple “Thanks, that really helped”. Other comments to be treasured:
one young guy went to my profile, looked at my age, and added some comments to my answer like “Holy Cow! You’re over 60! And you know this stuff – I can’t believe it!. Man I sure hope I can do this when I’m that old!”
one person solved a problem I could never have solved (he used DTrace on Xcode), solely because he saw all the questions I answered, and that I had a single unanswered question!
a person wrote a comment to my answer: “Thank you ever so much for teaching me to fish, and not just giving me a fish.”
Once I was crowing to my wife about hitting some big milestone (like 10,000), and she asked me, “So what can you use these points for?” Hah – good question!
Regarding the comment above about posting – you should first read the relevant tech docs, search for a previous answer, and then if all else fails write a good question, which is to the point, simple, and has background info on the code or situation you find yourself in.