Jul 4, 2023
Jul 5, 2023
Social Media Recruitment: Unleashing the Power of Online Networks
GitHub is the largest global platform of developers with over a hundred million active users. They use it as a collaborative platform to store their code allowing others to work on their projects. Different features like version control help developers to ensure code quality and maintain coding standards.
GitHub also hosts numerous open-source projects, fostering community-driven development and encouraging contributions from developers worldwide. As individual developers use GitHub to showcase their coding skills, projects, and contributions, it can serve as support for recruiters that want to find out more about candidate’s work.
GitHub isn't primarily a recruitment platform, but it is a resource that we are able to utilise as part of our sourcing strategy. Profiles are built for developers, so how can recruiters leverage GitHub for sourcing?
GitHub’s search functionalities lack the intuitive nature of platforms explicitly designed for recruiting purposes, like LinkedIn. It’s important to keep in mind that the process of identifying candidates may therefore take longer compared to the efficiency of recruitment platforms.
However, it can be used for direct sourcing or gaining supplementary insights into developers' ongoing projects. Consider a scenario where you're sourcing for an engineering role that demands a specialised skillset. In this circumstance, you can conduct a targeted search using specific code languages to uncover projects within the same domain.
GitHub allows us to gain additional context on what developers are working on, different than what is found on their LinkedIn profiles, which can serve well in your outreach message or understanding the experience of the candidate.
It's very common to see profiles that have little to no information. So how do we read between the lines?
Now that we know what GitHub is and how we can use it as recruiters, let’s dive into positive signals we can look out for.
Here are all of the points to look out for:
1. Number of Followers - Developers tend to only follow somebody if they're really into what they're doing rather than just looking at their individual projects or repositories. As a general rule when it comes to looking at followers, follow the below to gauge their reputation in the open source community:
0-10 - Okay
10- 25 - Good
75+ - Outstanding
2. Number of Contributions - Here it only shows contributions to public repositories. A developer can be a top contributor internally, but if they are not contributing to open-source projects, their contribution graph will be empty
3. Achievements - Having a high number of awards isn't always a sign of quality. GitHub gives users awards for many different reasons - some of them can be relevant and some not. Hover your mouse over each of the achievements and it will tell you what it was awarded for.
4. Organisations - A lot of developers list the company they’re working for. Figure out if the company that they are working for hires great tech talent, you can use this as a positive signal.
5. The Number of Stars and Forks on Repositories - If an engineer has public repositories with a high number of stars or forks, it can give you an indication that this repository is of particular interest to other developers.
6. Summary - Most profiles do have a summary, even if it’s very brief. Here you can look for any information on their role, such as job titles or motivations.
7. Pro - You might see the term “pro” listed on some users' profiles, it simply means that they're paying for GitHub's Pro Plan. It does not reflect quality,
Try and pick up on as many signals as you can and cross reference with other platforms where possible to confirm your findings.
Let’s delve into how the actual search functionality on GitHub works, focusing on the GitHub search functionality
There are two main approaches to searching on GitHub - standard search and advanced search. Starting with the advanced search is the best and easiest way to start a search. The advanced search functionality generates a boolean string based on the requirements. This boolean is then automatically added to the GitHub standard search bar. As you use this feature more, your understanding of GitHub's search functionality will improve over time allowing you to eventually go straight to the standard search bar and input a boolean string.
Use the 'User Options' section located at the very bottom of the Advanced Search filters. When conducting a search using the user search, the results are based on the terminology listed in a user's profile.
GitHub also provides you with a guide, that helps you understand how to search for specific terms using the advanced search. For example, to find users with more than 50 followers, GitHub shows you that you should use the greater-than (>) symbol followed by 50, with no space in between.
In this search, we are looking for developers in London with more than 50 followers who have repositories on their profiles in C++. The crucial thing to remember when searching for locations is that GitHub does give users a free-text field for their location. GitHub will only show us results if the user lists their location in the exact same way that we are searching for their location.
As most users tend to talk about their location using the city and not a country, we will tend to have better results searching with cities. We are unable to search for wider geographical areas, such as Europe, and receive results from users listing their location as Paris, Amsterdam etc, unlike LinkedIn. Keep this in mind and play around with your searches to find different results as you would on any other platform!
After hitting the search button in advanced search, GitHub takes you to the standard search and this is what we see:
It creates a boolean string for us from the criteria that we entered in the advanced search. In a similar fashion to Google, you don't need to add 'AND' between each requirement.
The search that I put together in the advanced search gave me 77 results. To broaden the search and obtain more results, you could consider adjusting or even removing the number of followers as a requirement.
Now let’s dive into finding GitHub projects that are related to what your team is hiring for, and then finding the top contributors of these projects. In my opinion, this is one of the best ways to source on GitHub as these developers are having their contributions accepted to projects which are similar to what the teams we are hiring for are working on. A great positive signal.
To make this technique work and to make sure that we are targeting the right projects and repositories, it is always best to reach out to the hiring manager of the role(s) that we are working on. Ask if there are any open-source projects on GitHub that they’re aware of that is working towards a similar goal that the team that we are hiring for is working on. From here, we can find the top contributors to these repositories.
To demonstrate, I'll share an example of how I used this technique from my time at Meta where I was recruiting for teams who were building the Metaverse. I started off by speaking with the hiring manager and asking him if he was aware of any open-source projects on GitHub that were similar to the work that his teams are working on. The hiring manager pointed me in the direction of the Android Open Source Project (AOSP).
Within the project, there are multiple repositories. Any of these which we explore will give us some good results. For efficiency, I started with the top repository as it had the most contributors.
Upon opening the repository, on the right-hand side, we can see all developers who have had their contributions accepted within this repository. If they are having their contributions accepted in a repository which is similar to the work that the teams that we are hiring for are working on, it can be an extremely strong signal as they are solving similar issues to our client’s teams.
Here there are almost 1,400 candidates who have had their contributions accepted.
Another huge pro to using this technique is that we can craft an extremely enticing outreach message to any developers who are actively contributing to these projects. We can highlight how the work that they are doing in the open source world aligns with the team that we are hiring for. Often, we don’t get this level of context simply from a LinkedIn profile. Unfortunately, GitHub doesn't give us the ability to message candidates directly through their platform so we do need to either reach out via LinkedIn or by finding their email address.
X-Ray searching GitHub using Google can be a great technique due to the powerful searching capabilities of Google combined with GitHub’s huge user base of over 100 million.
“Block or report” is a term that is only found on user profiles on GitHub. To ensure that your searches only give you results of users, add “block or report” to your search to increase your accuracy and efficiency.
Here is a simple search that I have put together X-Ray searching GitHub.com. I have added “block or report” to bring me user-profiles and not repositories or projects. I am also looking for profiles that mention the location of London, the job title of CTO and the language Java. This search returned 139 results including some extremely strong candidates!
When using GitHub advanced search, standard search or X-Ray searching GitHub, ensure that you experiment with your searches to bring different results - the same way that you would when using other platforms such as LinkedIn. For example, when X-Ray searching GitHub, you will also receive results by searching for engineering terms such as “distributed systems” or “high throughput” as some users might talk about the work that they are doing rather than including their job title.
As GitHub is not a recruitment platform, it is vital that we cross-reference our findings on other platforms where possible to ensure that our findings are accurate. We can find positive signals on GitHub profiles such as the number of followers, contributions to public repositories, listed organisations and popular repositories, but keep in mind that GitHub users do not build their profiles with recruiters in mind. Always cross-reference our findings on platforms specifically built for recruiters when and where we can to ensure that our findings are accurate. When initially reaching out to candidates, always try to find unique pieces of information from their GitHub profile that they do not mention on their LinkedIn. This shows that we have done our research and increases our chances of receiving a response from the candidate.
GitHub Pages is a lesser-known resource that can be incredibly useful for sourcing candidates. It allows GitHub users to create simple websites hosted by GitHub. Many GitHub Pages users utilise this feature for online CVs, project portfolios, and blogs. With GitHub users tending to use Pages in this way, it can be an amazing resource for us to use to find additional engineering talent.
GitHub Pages itself does not have a search functionality. The best way to find candidates who have published an online CV, blog or website on GitHub pages is by X-Ray search using Google.
GitHub Pages has a slightly different URL - github.io. So, when we use Google to X-Ray search GitHub Pages, your search will look like this - site:github.io followed by the other requirements you are looking for as demonstrated below:
In conclusion, GitHub has a huge developer community of over 100 million users. Once we understand how to identify positive signals and how to search for talent using the standard search, advanced search and X-Ray searching both github.com and GitHub pages, we are able to locate talent that we may not have been able to do so previously. We are also able to gain further context on what these developers are working on.
Remember to cross reference your findings and try to find information on candidates’ profiles that is exclusive to their GitHub profile (not included on their LinkedIn) to increase our chances of receiving a response when reaching out to candidates.