I've been in IT headhunting for a while, so I'm privy to much information useful to developers looking to have their big break in the It world and their chosen niche. The many developers, tech industry leaders, and tech recruiters I have related with have been of tremendous help for my journey in IT headhunting.
Many of them have become my close friends and you bet picking their brains has been a regular thing. Recently, I got the chance to discuss the importance of GitHub activities for a tech job interview.
Quite recently, the programmer's portfolio has almost become a must or a necessity, to say the least. In looking to adopt the best way to design a programmer's website, GitHub is becoming increasingly popular among developers for showcasing their programming exploit.
The reason is not far-fetched. While the programming world has enough spaces for as many that want to jump in, it hasn't stopped being competitive. Therefore, the need for programmers to adopt ways to stand out from the next programmer has never been greater.
That said, have you or about to opt for GitHub in hosting your programming exploits? Since GitHub is more than just the opportunity to showcase all your projects, does your other activity on the platform have any impact on the success of your tech job interview? If you want to know more read on.
For starters, GitHub and Git aren't technically the same though it's not uncommon for people to use both terms interchangeably. Github, introduced over a decade ago by Chris Wanstrath, Hyett. PJ. and Tom Preston-Werner is a platform/hosting service that lets programmers host repositories publicly or privately, and share them with anyone they choose.
To carry out some operations, GitHub requires what is referred to as version control as a way of managing the different code version bases. So, Git is GitHub's version control system. With Git, you can create repositories and push any changes made.
In GitHub, created repositories also referred to as a repository, are usually open to the public by default. However, if you don't want the public to access your repository, you have the liberty to make your repositories private. This option to block the third party from gaining free access to your repository doesn't come free. However, it is comforting that the fee is small, which allows you chose who can view any of your codes.
Furthermore, viewing and making changes are completely two different things, so relax, no one can modify or alter your code without your permission, and you don't have to pay for this feature. Companies also use GitHub, and it is possible that within the same company, some projects are open source, while some are not to every member of the company or team's interference.
For example, company's software development team A can be in Thailand, while the same company's team B can be working from India or the United States. This way, these different teams can work on a different project on the same Hub, yet not have access to each others' projects. Pretty cool right?
Microsoft acquired GitHub not too long ago, meaning GitHub is one of Microsoft's subsidiaries and will still function as an independent business, community, and hosting platform. GitHub has millions of users and still growing.
Here are some of the reasons why GitHub is a choice for many developers and tech companies alike.
Whether you are a fresh-out-of-college, junior, or senior software developer, GitHub is one of the best tools you can adopt to showcase your hard/soft skills, executed projects, personal research, and even past college assignment or thesis.
It is now no longer sufficient to tell recruiters what you can do with your competence in Python, Java, or JavaScript. In today's competitive programming world, recruiters now want developers to show them what they have done or are currently up to. Gone are the days when the college names speak loud volumes at tech interviews. Competence now speaks louder, and there is no better way to prove it than to show it.
Over the years, GitHub has become a useful tool for today’s developers that wants to easily showcase their programming language competence. What’s more, it allows the liberty of multiple programmers to contribute to a project, saving time and improving the outcome of a project with efficiency.
For example, if you are working on a project (app) with a team of software developers, and you have the responsibility to add a special feature to the app. While you can integrate your contribution into the main app and potentially risk crashing the entire work, GitHub can come with its version control feature to create and manage a copy of the main app.
So, when you are done, you team members can remotely review your code, make correction or contributions before merging in the main app. This way, developers can work on the same file with multiple features, yet avoid issues that could arise from conflicting code on each developers' local system.
This single fact makes it possible for developers' projects to get the widest exposure they need. What's more, with numerous tools available to software developers on GitHub, it's one of the best places for open-source software. For example, GitHub is the platform where big, open-source projects like Angular JS, Ruby on Rails, and Bootstrap are hosted. Microsoft, which recently acquired GitHub also maintains some of its code repositories on GitHub.
GitHub offers an easy way to follow the codes of tech companies that maintain theirs on GitHub. This way, any developer that wants to impress or catch the attention of a tech firm can easily do so on GitHub. Similarly, developers can also keep an eye on a favorite software developer. Think of it as people follow their favorite celebrities on social media platforms, to keep up with any new trends.
As mentioned earlier GitHub allows collaboration from different programmers. Without a platform like GitHub, it may be a bit hard to keep tabs on who changes something, when, and where the changes are stored.
This keeping-up-with-changes problem is easily taken care of by just focusing on all the changes pushed to the repositories. Just like working on Google drive or a Microsoft word document, you can have different versions of your code, making sure that the previous or main version is not lost with every interference.
Now that you understand what Git/GitHub is and how important it is as well, you might want to know that every activity you carry out in the hub leaves a digital footprint. The activity of a user on GitHub is displayed per day and across months, represented by very dark green for more activities, light green for relatively less activity, and no color for no activity.
How important is a developer's GitHub activity for a job interview?
Do the dark green squares on GitHub's activity meter actually matter to recruiters? If it does, to what extent? Does a developer need to write code daily, weekly, or monthly to be rated high by a tech recruiter for a job? What will be the implication if a developer doesn't have any activity or leave any footprint for a month or even a couple of months? To look at this question, it might be best to look at the scenario from different perspectives.
Perspective 1: An employed busy developer.
The truth is, it's not impossible for a software developer to not have the time to constantly update or work on many open-source projects, thereby leaving plenty of footprints on the GitHub activity tracker. What's more, a developer can have a couple of projects or more that isn't technically a public project.
Meaning, it could be a custom CMS, created exclusively for a a client of tech firm's use. So, it's not unheard of that some software developers don't throw their project's source code online. It's probably the same reason Amazon's source code is not publicly available to everyone. So, will such a developer, with many projects to show be judged poorly by an employer because GitHub's activity tracker isn't reading active?
Perspective 2: Newbie developers.
If you happen to be a fresh-out-of-college developer or a new self-taught programmer looking for some action, chances are you don't have any major projects to brag about. For this scenario, having something to show at an interview is essentially better than nothing. Look at it this way, since you don't have any client or full-time job taking your time, your GitHub activity might just be one of the few ways to show you have been busy.
Still, you might want to be a bit careful with what your GitHub activity tracker is showing. Because trust me, it's one thing to be busy, it's a different ball game to spend time on things that a recruiter will consider of value.
For example, if your GitHub activity shows nearly a hundred commits per month, but they are only small CSS or HTML on a personal project, then chances are, these odds may not make you stand out in a way you might be expecting. In other words, what you are working on is essentially more important than how many things you are jumping on.
That said, the tech-savvy recruiters I conversed with recommended that as a junior or newbie developer, you should spend more of your time working on GitHub projects that are more substantial and involve more complex application program interface (API) or frameworks. Whether it's your personal project or you are jumping on another programmer's code, working on implementing APIs or dealing with the latest framework is undoubtedly a more real-world problem.
Perspective 3: Non-tech recruiters.
If it's any consolation, some recruiters, especially, non-tech ones, are often happy with a GitHub activity tracker showing all-green, irrespective of the quality of commits or contribution.
From a little experience I have had, non-programmer recruiters, especially the ones that hire on behalf of tech companies, quantity sometimes raises your odds at acing an interview. Meaning, a very green or active GitHub activity can possibly get you through the main company you'll be working for.
After that, it might not do much good since you'd likely be meeting with the tech-savvy interviewer in the subsequent interview stages. They are more interested in the real deal, i.e., more substantial work than a truck-load of commits that may not even have bearing with real-world tech challenges.
What to do to make your GitHub activity matter.
The truth is, more companies are taking GitHub portfolios and a programmer's activity on the hub seriously. So the best thing will be to leverage on both having major projects tech-savvy recruiters will find interesting and also keep your online footprint very active. For example, to beef up your repo activity on GitHub with things that matter, you'll do well to contribute to open-source code.
For the most part, these project types are often more complex and bear close resemblance with real programming world projects. What's more, contributing to an open-source project will strengthen your hard skills, which is one of the reasons tech-savvy recruiters want to see your coding activity in the first place.
To sum it all up
Having an active GitHub is more than just making your activity boxes green. If a developer walks into an interview with a GitHub portfolio looking all lighted up, but without substantial projects or contributions to back it up, it might not be a great profile from the perspective of hiring.
What will help are projects that will add value to the tech company's business and in today's competitive tech world, trust me you cannot escape showing how good you are if you will ace an interview.