Boolean search on google to source candidates from stack overflow is an extremely inefficient way of searching candidates. The 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 framework. 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 higher search rank compares 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.
How to use SQL query to source candidates on stack overflow?
Head on over to SQL query generator for data.stackexchage,
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 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 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. We strongly encourage you to not use any external search inputs that are not suggested by the page.
On 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. If you leave it empty, it will search for all the users.
Gold badge: 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: 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: 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 skills filed 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 behaviour 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 go 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 in the large query input box. Once you have pasted the query there, click on 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 sourcing developers on stackoverflow and let us know in comments.