Recruiting and Sourcing Developers on GitHub: The Complete Guide
It’s no secret that recruiting developers might just be one of the toughest parts of a sourcer’s job.
If you’re still trawling LinkedIn relentlessly you’re missing a trick. You need to take advantage of social networks like GitHub to source top engineers.
Sourcing on GitHub is free, but more importantly, GitHub is a pretty important part of most serious developer’s workflow. As a result, it’s become very popular with the kinds of technical candidates that you might struggle to find elsewhere.
We’ve broken down everything you need to know about recruiting and sourcing developers on GitHub. Enjoy!
What is GitHub? 👀
GitHub is the world’s biggest social coding site. It’s a place where developers can host, share and collaborate on code that is built around an open source framework (e.g. Ruby on Rails).
All software projects on the site use the Git revision control system (a version tracking system). Thus it lets developers record and track updates to code, and compare it with the original.
Simply put, sharing code on GitHub is the technical equivalent of sharing photos or content on Facebook or Instagram.
Why GitHub? 💻
Just about every company needs people with coding, developing or programming experience.
Whether you’re updating your company's website or building an app, or designing a system, you need software engineers and developers — both of which are the most in-demand roles in the market.
Companies need to become more strategic with their sourcing tactics if they want to attract top software engineering talent. Those in tech have endless job opportunities; they’re not actively looking for jobs or applying to roles. They’re also unlikely to respond to many recruiters trying to connect or looking for them to apply.
Today, there’s a requirement for those hard-to-hire technical roles to meet talent where they show up and on the platforms they spend their time. For most software engineers and developers, that platform is GitHub.
How to search for developers on GitHub 🔍
With more than 32 million monthly users, GitHub can offer a lot to recruiters who understand how to search the platform.
Here’s a step-by-step guide on how to source developers on GitHub.
1. Create an account
Sounds obvious right! GitHub search is pretty limited to anyone who isn’t logged in, so creating an account and adding basic information and a photo will help you get started.
2. Run a new search
There are 3 main things to think about when you run a search on GitHub.
Followers: Followers are a great indicator of the respect that a developer has earned within the open source community. As such, they’re a neat way to gauge seniority.
Language: What specific skillset are you looking for?
Location: Unless you’re trying to fill a remote role, location is always an important parameter for your search.
Here are a few examples of how you might combine these terms into a search:
language:ruby on rails location:london followers:5..10
language:javascript location:san francisco followers:<50
You don’t have to run your search directly from GitHub: you can use Google instead. Here are a few effective strings to source candidates from Google:
Find Profiles: site:github.com “public activity” -tab.activity
Find Profiles with location: site:github.com “london” “joined on” “public activity” -tab.activity
Find Profiles with key terms: site:github.com (ios | android) “public activity” -tab.activity
Find Profiles with key terms, followers or starred count: site:github.com (“50..250 followers” | “100..500 starred”) (javascript) “joined on” -tab.activity
You can add parameters like "joined on [insert date]", specific organization names, or even the organizations of a certain headcount to narrow your search further.
3. Filter candidate profiles
By default, GitHub usually shows you repositories (not profiles) in the search results. You need to filter by users to find the candidates that match your new search.
GitHub will automatically show you the best match for your query, but there’s an option to re-order your results by things like "most followers", "most repositories" and "most recently joined".
Sometimes it can be effective to sort candidates by the amount of time they’ve been a member on the site ("most recently joined"). These candidates are unlikely to have been contacted by as many recruiters and may be more likely to reply to you...
Once you’ve found the candidates that you’re looking for, log their profiles with a Sourcing Chrome Extension, and add them to your CRM or spreadsheet.
Recruiting on GitHub: What can you learn? 📚
If you want to source candidates on GitHub effectively, you need to know where to look. You can learn heaps about each developer, and their interests and skills, if you pay attention...
A developer’s GitHub profile provides a wealth of information.
A quick glance should tell you a candidate’s username, current employer, location and email address, but digging a little deeper pays off... Consider also looking at:
Websites
These include personal blogs, projects, and other links that candidates have chosen to display (all great places to learn more about their work and interests!)
Followers
The number of followers a developer has on GitHub is a great indicator of their skill and reputation within the Open Source community.
For reference:
2-10 followers is good, 11-25 is very good, 26-75 is fantastic, and anyone with 75+ followers is a complete rockstar (be warned, these people can be tricky to recruit!)
Contributions
This is where you can see the contributions that a developer has made to other projects on the site. Even if you’re completely non-technical, you can glean a fair amount from exploring this section.
For example:
See if you can spot keywords that pertain to the coding languages the person usually writes in (for example "rails" should be visible if a person has contributed to a Ruby on Rails project.
Repositories
The repositories section contains the open-source development projects that the developer is hosting on GitHub, as well as projects that they’ve copied ("forked").
To gauge the popularity of a developer’s projects in the community, you should check how many people have starred or "forked" them (forking or starring code indicates that other developers see it as valuable).
Forking
"Forking" someone’s repository creates a copy of it. This allows the forker to modify the original code and use it for their own projects.
This concept of sharing ideas and code is at the very core of open source sites like GitHub. (If code is meant to be private, it will not be hosted on the site).
When you go to a repository page, you can see how many people have starred and forked it, as well as a range of other project activity. A large amount of activity indicates that a developer has created (or is working on) a popular project.
How to contact candidates on GitHub 📨
One of the biggest advantages of sourcing on GitHub is that most candidates list their personal email address in their profile.
This makes outreach easy, the only problem is that it makes outreach easy for every other recruiter!
This is why personalizing your message effectively becomes so important. The developers that you contact may be receiving countless other recruiting messages – you need to find a way to stand out.
The best way to do this is by learning as much as you can about candidates.
Check repositories
Head back over to a developers repositories to see the code that they’ve stored. It doesn’t matter if you don’t know your CSS from your HTML, you can still get plenty of information here.
Code listed under "Sources" has been authored by the developer, while anything that’s been "Forked" has been copied from another user.
Look for recognisable keywords, and open up projects to read the description and learn more. Remember, most of the code on GitHub is related to personal projects, so you can get a really good idea of what people are genuinely passionate about.
Remember: anything that you spot here can be used in your outreach.
Monitor public activity
Take a look at their public activity to see what they’ve been focused on recently.Have they been on active on GitHub? Are they adding more code, or forking someone else’s? Is there a particular project that they’re spending a lot of time on?
If so try and mention it in your message.
Cross reference
GitHub is great for giving you a snapshot of a candidate’s technical interests, but make sure you cross reference it sites like Twitter, LinkedIn and Facebook to get the full picture on candidates.
Craft a custom message
The final step is simple. Pull together all of the personal information that you’ve picked up from GitHub and other social networks and craft your message.
Here’s an example that we put together to give you an idea of the kind of message that works well here: