What is GitHub? GitHub is a web-based hosting service for software development projects that use the Git revision control system. Put simply, it is a computer software engineer-focused social network used by students and professionals around the globe to share, create, critique and contribute to code and open source projects.
Why source on GitHub? GitHub is an excellent place to search for skilled software developers and engineers because it is teeming with a plethora of emerging and established talent. GitHub is a crucial component of every serious software engineer’s routine workflow, and this has resulted in the site becoming profoundly popular among the software developer populace. The site was originally founded to simplify the sharing of code, but it evolved into so much more. Today GitHub is home to over 10.3 million repositories and is the largest code host in the world. Every repository on GitHub is outfitted with the same tools, all of which are open to the GitHub community for both public and private projects.
GitHub has grown by leaps and bounds since launching in April 2008, and it continues to do so at a staggering rate. During the first year that it was online, GitHub accumulated 46,000 public repositories, and by July 2009 the site had 100,000 users. In September 2011, GitHub announced that it had amassed over 1 million users, and as of December 2013, GitHub had well over 3.5 million users and was hosting 10 million repositories.
In sum, GitHub has become the online space for software engineers and developers to create and collaborate. It is also widely trafficked by software engineer students who are working on school projects and absorbing new skills and ideas. GitHub also boasts a substantial international membership and therefore offers access to a pool of candidates that are unlikely to be found on LinkedIn, which primarily caters to professionals in the United States.
Because GitHub is in a state of constant use, both its users and its content are especially up-to-date compared to other professional social networking sites. GitHub showcases the latest, most innovative work of software engineers long before it shows up on resumes and LinkedIn profiles. In addition, GitHub’s super-niche industry-centric focus attracts users from every segment of the software engineering community. You’ll find talented coders from around the globe—from students and professors, to established professionals and ambitious entrepreneurs.
How is GitHub professionally relevant? Software developers and engineers use GitHub to hone their coding skills, and to create and share new software code. They come to the site to network with their peers, acquire skills and test out new ideas—making GitHub ground zero for the latest cutting-edge software engineering developments. The ever evolving nature of technology makes it challenging to stay on top of the newest breakthroughs and advancements, but GitHub offers a peek at the people and ideas behind the freshest activity occurring in the industry right now. All of these factors add up to make GitHub the ideal network for discovering relevant professionals and rising stars in the software engineering world.
What is the core activity that goes on there? Members of the GitHub community create and submit software code. They also follow other GitHub users so they can view the related work of fellow coders, contribute to it, and learn from it. GitHub members assist each other by providing feedback on each other’s work, submitting questions and offering fixes to one another’s code roadblocks.
How is the core activity structured? GitHub consists of repositories that are written in specific software languages and include details such as the specific interests and goals of their creators. As a result, you can examine the profile of a repository creator and get a solid sense of his/her specific skillset. For example, let’s say you come across a GitHub user who follows and/or has created numerous Objective-C repositories—you can then deduce that he/she is likely an iOS developer.
People can follow, own or fork various repositories. Forking a repository creates a copy of it, allowing the forker to modify and tweak the original code. When you go to a repository page, you can see how many people have starred and forked it. You can also see information on all of the activity associated with it, including the number of commits, branches, releases and contributors.
How do I make use of the core activity on GitHub? There are a few different ways to sift through and search activity on GitHub. The best strategy is to incorporate specific details such as geographical location and software language names into your search.
So, for example, you can conduct a basic Google search to pinpoint users who are members of GitHub that work in iOS Android and have engaged in public activity on the site. Some previous SourceCon articles have focused more heavily on this approach.:
Alternatively, you can conduct an on-site search using GitHub’s advanced search tool:
The advanced search feature on GitHub allows you to select numerous variables to narrow and target your query. You can select specific software languages, repositories, dates, etc. to pull up results that match your requirements. As you fill in the details, the top search bar auto-populates with your chosen terms.
How do I browse activity on GitHub? There are a few ways to browse GitHub. You can target popular repositories by navigating to the “What’s Trending?” area. Just click on the “Trending” button at the top right of the page. Then click the “Repositories” tab at the top left to pull up a list of the ones that are currently trending on the site:
You can also opt for a more targeted approach and look at what is trending on GitHub within a specific type of software language. For example, let’s say you want to view this month’s top trending Objective-C repositories:
To delve deeper into your search, click on individual repositories to find out more about the various GitHub users contributing to each one. So, for example, if you click through to the main page of the top trending Objective-C repository, OpenEmu, you can then click on the “Stars” button at the top right to be taken to a page that lists the profiles of all the GitHub users who have starred this particular repository, i.e., they are following it, but haven’t forked it yet.
Clicking on an individual Stargazer profile will take you to that GitHub user’s main profile page, where you will then be able to glean information about his/her specific skillsets, interests and experience. Another, more targeted browsing strategy is to conduct your search according to specific software languages.
For example, let’s say you are on the hunt for developers who specialize in Redis and Ruby on Rails—you can pinpoint a popular Redis repository on GitHub that is written in Ruby and go from there:
Once you land on the Resque repository page, click the “Star” button at the top right to see everyone on GitHub who has starred it:
Similarly, clicking on “Fork” button at the top right will take you to a roundup of the GitHub users who have forked the repository:
Another way to browse GitHub is to select a top developer from your own company and use him/her as the launching point for your search. Once you locate his/her profile on GitHub, you can then click through to a list of his/her followers, many of whom are likely to possess similar skills, specialties and aspirations as the trusted developer employed at your place of business. To give an example, let’s take a look at the profile page of GitHub user Francisco Viramontes (username: kidpollo):
We can immediately see that he has 41 followers. Clicking on the link below his profile picture will take you to a page that displays links to the profiles of each of these 41 GitHub users who follow kidpollo:
As you can see, in just a few quick and easy steps you have successfully used GitHub to generate a valuable lead list of 41 software developers who follow an established and trusted engineer with whom you are already familiar. You can now use this lead list to launch a systematic search for potential qualified candidates. Clicking through to each profile will reveal more details about these individuals. There is an additional bonus to this search method: once you identify a potential candidate you want to pursue, you can reference the developer from your company in your initial correspondence. This is a strategic, effective way to kick off a recruitment pitch, and it will improve your chances of garnering the interest of the candidate.
How do I qualify candidates based on the information present? GitHub is a terrific indicator of a potential candidate’s skillsets because it allows you to click through to each member’s repository activity—the repositories they follow, the repositories they’ve created and the repositories they’ve forked. This in turn enables you to discover the exact type of code they write, and it provides you with a sense of their specific experience and skill level with that software language. For example, looking at kidpollo’s repository activity, it is immediately apparent that he is a Ruby on Rails developer:
So, if you happen to be looking for a Ruby on Rails expert based in San Francisco, you now know that kidpollo could be a potential candidate and someone who is worthy of further research.
A GitHub user’s profile page also shows which repositories he/she has created, forked and/or starred:
This information provides a sense of the volume and quality of the contributions this particular individual has made to the GitHub community. If the user is extremely active and regularly provides thoughtful content and feedback, it indicates that he/she possesses a passionate commitment to his/her professional craft.
Looking at repositories that a user has starred (followed, but not forked) is another way to uncover information relevant to his/her qualifications as a potential candidate. Filtering the results by software language will give you an immediate sense of the user’s areas of concentration.
Perusing a user’s public activity on GitHub, such as comments and check-ins, can also offer some insight into his/her qualifications and skills. In addition, this type of information could prove interesting and useful to hiring managers:
How do I cross-correlate to other candidate identities? Many GitHub users display their personal website information on their profile page, which makes it easy to navigate to their other online profiles and pages. Nonetheless, a tool such as TalentBin’s browser plug-in can be extremely helpful in leading you directly to a candidate’s alternate online identities, such as his/her Quora, Facebook and LinkedIn profiles.
How do I execute outreach? A wonderful thing about GitHub is that its users almost always display their personal e-mail address on their profile pages, just below their photo. And, as mentioned earlier, they often include their personal website as well, so if the e-mail address happens to be absent from his/her profile page, you will undoubtedly be able to obtain it from his/her personal website. As you can see in the example below, GitHub user Chris Saylor’s e-mail and personal website are clearly displayed directly under his profile picture:
When you reach out to a potential candidate via e-mail, you can refer to his/her specific GitHub activity. Mentioning recent projects, referencing the candidate’s company, and discussing specific recent activity is a great way to open a dialogue and demonstrate that you are professionally interested in him/her for all the right reasons.
What have I learned and why is it interesting? You’ve learned about the existence of an extraordinarily popular, niche online social networking community that is heavily used by both up-and-coming and established software developers and engineers. You also now know how to browse this site and use its industry-centric design and functions to identify talented coders who might not have otherwise appeared on your radar. GitHub offers easy access to a segment of the software engineering populace that is especially active, innovative and ambitious, and this in turn gives you an instant competitive edge in the hunt for top-tier talent. In other words, GitHub could be your new secret weapon.