A company using GitHub internally can do the same thing at the organisational level. That’s exactly what a Flipkart or an Unacademy does with GitHub today.
But DevOps is new. A portmanteau of “development” and “operations”, it’s what the engineering community calls combining software development together with information technology (IT) operations.
Just like the IT teams that companies need to ensure their computer systems are in order, DevOps are the IT teams for software developers. The end-goal of a DevOps engineer, says Animesh Pathak, who worked as one at fintech startup PhonePe, is to allow developers to code the main product without worrying about how it’s going to be tested or deployed. “They should be able to code seamlessly,” he says. “And it should work.”
For example, a product developer who’s building an app will work on just the app and its features. Before the app is consumer-ready, however, it needs to be tested and deployed. And that’s where DevOps steps in, says Pathak. She sets up the testing environment and automates deployment, developing the necessary tools, so the developer doesn’t need to get their hands dirty.
The role of DevOps is still relatively new, but in 2018, it was the most recruited job role recruiters were looking to fill, according to a LinkedIn report . DevOps has caught speed right alongside the popularity of cloud computing services like Amazon Web Services (AWS) that changed the way software was built and hosted: from on-site to the cloud. “DevOps wouldn’t exist without AWS,” says Bhayani, who was a DevOps engineer in a previous role.
Does the developer require more central processing unit (CPU) allocation? DevOps take the call on what’s actually needed and when. Is a big festive sale coming up? The DevOps of an e-commerce company will need to ensure that the company servers can handle the expected traffic. On a regular day, DevOps will ensure the opposite—that CPU allocation is limited. Cloud services, while convenient, are also expensive, says Bhayani. “DevOps essentially saves companies money by being the mediator between the developer and the cloud service.”
But what does GitHub, a code-hosting and collaboration service, have to do with DevOps?
To answer that, we need to look at GitLab.
GitLab does everything that GitHub does, and then some. But with entirely different branding. While GitHub calls itself a software development platform, GitLab offers a slew of features that GitHub lacks and refers to itself as a “complete DevOps platform”. An important differentiator in a market otherwise dominated by GitHub.
In August 2019, GitHub released its own set of DevOps features called GitHub Actions. The goal is clear: GitHub wants to give users no reason to even consider GitLab’s differentiated offering. Its Indian entry announcement makes the end-goal amply clear if it wasn’t already.
An enterprising technique
“We were born in the enterprise,” GitLab CEO Sid Sijbrandij told InfoWorld back in 2016. The emphasis on DevOps was one that was conducive to this focus on enterprise customers. In 2019, 72% of GitLab’s $120 million revenue came from enterprise subscriptions.
GitHub’s raison d’etre, on the other hand, has always been that it hosts the vast majority of open source projects and is the go-to space for open source developers. In fact, GitLab is built on Ruby on Rails, an open source web framework on GitHub.
And so are many other popular projects. Go, Google’s programming language. And Joomla, a content management system. Or freeCodeCamp, a code learning platform. In comparison, popular open source projects on GitLab are few and far between. In 2019, according to numbers on GitHub’s website, the platform had 40 million developers.
These million developers then become advocates for GitHub, says Aravind Putrevu, senior developer advocate at a California-based open source software company. “GitHub has familiarity,” he says. And companies are much more likely to use software that its developers are already used to.
Yet, compared to more than two-thirds for GitLab, only about half of GitHub’s $200 million revenue in 2017 was from enterprise customers like Flipkart and Spotify. Globally, GitHub told The Ken “that 29 of the Fortune 50 companies are building software for their businesses on GitHub Enterprise and almost 70% of the Global Fortune 50 companies have contributed to open source in the last year.” The company declined to share overall or India-specific figures.