Boolean search on google to source candidates from stack overflow is an extremely inefficient way of searching for candidates. Google’s algorithm runs on incoming hyperlinks and thus it will automatically surface candidates that have links to their answers and where people spend more time. This is not necessarily the best way to unearth candidates. Here’s why.
Let’s say developer A is a real rockstar working on python and Django frameworks. This means that s/he will probably have a lot of questions and answers on Django and python that will be linked a lot. However, they might even have answered just one question on nodejs! So s/he is not the nodejs champion you are looking for. But when you write a boolean query, these users will get a higher search rank compared to someone who has written a few nodejs answers but doesn’t rank so highly.
Thankfully, the awesome folks at stack overflow let users query their internal database in an SQL format that can give you specifically people who have written answers/asked questions for nodejs! However, SQL is not as easy as boolean and most of us recruiters and sources have been so obsessed with boolean(i hate it if you ask me!) that we have never even taken a second look at SQL-based stack overflow database.
Boolean search ranks users based on their total inbound links(not a very good proxy for skill, or overall ranking) instead of the community points they have earned on a particular skill.
Table of Contents
How to use SQL query to source candidates on stack overflow?
Head on over to SQL query generator for data.StackExchange,
Step 1: Create Location Filters
Enter Locations that you want to search these users for. Remember, that in stack overflow location is a free text field. So when you search Bay Area, also include places like San Francisco, San Jose, Silicon Valley, etc. You can even put countries. By our estimate, there are close to 400,000 different locations in stack overflow! Besides, a lot of users have kept their location empty so there’s that to struggle with as well!
Step 2: Enter the skills you want in this candidate and the skill level
Enter the languages these candidates have used. These languages are specific tags that are used to make questions and answers more organized. It is important to understand the format that stack overflow uses. Like nodejs will return results but inputs like node.js, node js, etc won’t return any results. As you start typing, the page will automatically suggest the tags and these tags are the ones used by stack overflow.
Two rules to remember for language/skills input:
- Don’t use skills other than the ones suggested to you. That is the exhaustive list of all the distinct tags in StackOverflow.
- Make sure you input all variations of the language/skills you want to find. There are more than 15 python related tags in Stackoverflow. Select all of them for the best results.
At the bottom of the input field, you will see an option to select badges. You can filter users by those who have earned a gold, silver, or bronze medal in the particular language you are searching for. If you leave it empty, it will search for all the users.
Gold badge: The user must have a total score of 1000 in at least 200 non-community wiki answers to achieve this badge. A total of 7k gold badges are awarded to users. One user may have multiple gold badges.
Silver badge: The user must have a total score of 400 in at least 80 non-community wiki answers to achieve this badge. A total of 22.6k silver badges have been awarded (at the time of writing this)
Bronze badge: The user must have a total score of 100 in at least 20 non-community wiki answers to achieve this badge. A total of 116k bronze badges have been awarded (at the time of writing this)
So if you are looking for Django developers who have the silver badge, just write Django in the skills field and select silver in the “skill level”. It will give you the users in a selected location who have a silver level badge in Django!
Step 3: (optional) Select behavior badges
This part is really optional. There are a bunch of badges that stack overflow awards its users based on their usage pattern. You can read all about the stages here.
Step 4: Head over to data.StackExchange
Once you have generated the query, click on the button at the bottom that says “Copy query and goes to data.stackexchange”. You will be redirected to the following page.
Step 5: Run the query
Enter the query title and paste the copied SQL query into the large query input box. Once you have pasted the query there, click on the Run Query box at the bottom. Based on the number of results, it might take a few seconds or maybe even a few minutes to get the results. You can also download results in a CSV.
Let us know how you have succeeded in sourcing developers on StackOverflow and let us know in the comments.