How to source/find software developers/programmers on Github
Github is very popular amongst developers and startup communities to host open source projects. Many developers upload their college and part time projects on Github. A Github project is called a repository. Currently, GitHub has more than 25 million repositories of source code and 10 million developers on board.
And hence every recruiter should be using this platform for sourcing the technical talent. The advantage of using Github is that it doesn’t restrict you in searching according to your choice unlike in StackOverflow. But before understanding GitHub you need to understand the concept of “git”, why GitHub is so popular among developers.
The “Git” in GitHub
Git is an open-source, version control system that was started by Linus Torvalds — who is popular for creating Linux. Git is similar to other version control systems such as Subversion, CVS, and Mercurial.
Version control systems:
So, Git is a “version control system” .
what does that mean?
When developers are creating something,an application, for example, they are making constant changes to the code and releasing new versions,up to and after the first official (non-beta) release.
Version control systems keep these revisions straight and store the modifications in a central repository. This allows developers to easily collaborate, as they can download a new version of the software, make changes, and upload the newest revision. Every developer can see these new changes, download them, and contribute.
The “Hub” in GitHub
We’ve established that Git is a version control system which is similar but better than the many alternatives available. So, what makes GitHub so special? Git is a command-line tool, but the center around which all things involving Git revolve — effectively, the Hub, is GitHub.com, where developers can store their projects and network with like-minded people.
Let’s go over a few of the main reasons that geeks like to use GitHub, and learn some terminology along the way.
A repository is a location where all the files for a particular project are stored, usually abbreviated to “repo”. Each project will have its own repo and can be accessed by a unique URL.
Forking a repo:
“Forking” is when you create a new project based off of another project that already exists. This is a fantastic feature that vastly encourages the further development of programs and other projects. If you find a project on GitHub that you’d like to contribute to, you can fork the repo, make the changes required and release the revised project as a new repo.
The social networking aspect of GitHub is probably its most powerful feature and is what allows projects to grow more than anything else. Each user on GitHub has their own profile, which can act as a resume of sorts, showing your past work and contributions to other projects via pull requests.
Github is free for unlimited collaborators and unlimited public repository. Any number of people can collaborate with you on your project, and you can add any number of public repositories on Github
As said each user on Github has their own profile, We can search any developer’s profile according to our selection criterion with Github’s advanced search. And this feature of GitHub makes it an ideal place for recruiters to screen technical talent with ease.
I hope with the above information you got an overview of how Github works and how it can be useful to you, so let’s start digging into it.
There are mainly three ways a recruiter can source candidates on Github
- With advanced search on Github
- X-ray search on google
- ‘Looking for a job’
1. With advanced search on Github
But before going into to the details on sourcing candidates you need to have a GitHub account. Click here if you don’t have a GitHub account.
Finding developers is easy on GitHub, just go to https://github.com/search/advanced and head over the end of the page.
You will be able to search developers on the basis of four parameter
3. Number of followers
4. Number of public repositories
Having 2–10 followers is good, 11–25 is great, 26–75 is exceptional, and 75+ followers is super hot. For example, if you wish to find someone whose skilled in Python, based in Pune and which a follower count greater than 25. after putting the details in the above field and search my result is looking like this
I have found 13 users who have more than 25 followers and working in Python. Change the language to whatever language you want. You don’t have to make any changes in a search query. You can change the language by clicking on the option present on the side.
By default, GitHub will show the best match result, the result will rank people according to how they have coded in that particular language and near the location you have included. There are many other options to sort as you can see in the image below.
According to advanced search result, we have gotten 13 users but this not the only way to search profiles.
But first, lets go to the first candidate’s profile and check out developers activity on GitHub and how it can help the recruiter to source better.
This guy has a follower count of 300 which is an exceptional number. On the left side, you will get the developer's information like
This information is critical for a recruiter, however not all the developers would fill this information. When you come to the developer profile, you would be able to see the developer’s famous six repositories. Forthe above person, ‘pym’ is the most popular repository. Below the name of the repository, you will be able to find three things
Language- Language in which the repository is being written
Stars: How many people have starred this repository
Fork: How many people forked the repository.
After the repository, you will be able to see the timeline of the developers’ activity on the GitHub across the each month, i.e., The contribution may be for developer’s own repository or the repository he forked. Below that, you will be able to see the whole contribution activity of a developer across the year(on the right side you can choose the year) and month. It will be helpful to understand how much he is active on the Github. Your developer can help you out if you want to go deeper and check developers contribution.
Now coming back to the result page. On the right side, above languages, you will be able to see Repository, Code, Issues, Wikis, Users. Let us dig in deeper on we can source candidate with those options also.
Another use case of using code is that you have already shortlisted the candidate for a particular technology, and now you want to dig down and see whether he knows the libraries, functions etc., which one should be aware of while working in your company or project.
This option might not be very handy for recruiters who don’t have technical knowledge. If I want to check whether a particular candidate knows how to use sqrt in python, my search query will look like this
my result will look like
Ask your developers what their ideal candidate should know in coding and replace math.sqrt with those terms and also username.
Collaboration is the main thing on which GitHub grew rapidly. Developers can simultaneously collaborate on the work they liked or work they are using in their existing project. Every repo on Github is evolving and handling the new use cases. Many developers can raise an issue if they are having any problem with the repo or not handle the use case they are trying make in their own project.
If you have already shortlisted the candidate and want to know how he used a particular library and if he faced the same problem that you faced and how he solved it. In this also you have involved your technical team. Or what are the problems they are currently facing
2. The x-ray search
As most recruiters are from a non-technical background, The easiest way to find developers is to search them on Google. I personally love X-ray search. We can use a custom X-ray search to find developers on StackOverflow, LinkedIn, Twitter and many more sites.
The same X- ray search can apply to Github. You can created an X-ray query which can help you source candidates based on their location, no. of followers and programming language.
For this, you can use the tool called https://recruitin.net/ When you arrive at the go GitHub tab which is the second one from the left. Most of the recruiters’ searches are based on two things one location and second is skills
So taking the same example as earlier, I am going to enter Python as a skill and Pune as my location as you can see in the below image.
After clicking on ‘call to action’, I am getting an X-ray query like this
Open the URL in Google, and you will be able to see the result. As you can see, I got 161 results
But still, these are only the people who know Python in Pune, but I want people who have more than 25 followers. Just add (“followers 25..”) to end of x-ray query generated by Recruit’em your previous results get filtered and as you can see in the image I got 28 results.
As I said previously, having followers more than 25 on Github is a great sign of developer’s quality.
3. Looking for a job
Often people who are looking for job enter `looking for a job` text on their profile description. With GitHub search, you can easily find such candidates. Let me first tell you that you won’t be able to get too many candidates through this method. But if you are lucky then you might find your potential hire.
These are the candidates who are active job seekers and they might be contacted by many people. For sourcing developers, through this method, you have to go search bar and Enter
looking for job location:”CA”
currently, I haven’t selected any language, but you can easily choose any language from the options present on the left side.
Github is a great place for developers to showcase their work & collaborate with others which makes it an excellent platform for sourcing. The above techniques are only applicable to public repositories, and there are many developers who have done remarkable work for their company but are only present in private repositories which can’t be showcased.
To build a great Github profile a person has to collaborate with other repositories and upload the recent projects they have done. There are many good developers are present on GitHub but are not active and there are many great developers out there who are not even on Github.
However GitHub is a community of over 31 million developers from around the world. So, being able to source them on the basis of their actual work is very helpful. This certainly helps a technical recruiter to look beyond candidate’s LinkedIn profile and Resumes.
I am Prasad, Founder of QuodeIt.com ,a Pune based startup trying to save recruiters time on initial filtering of programmers. We are going to post such blogs twice in a month. If you like this blog don’t forget to like and share. Also, check out our latest tutorial video on the topic :