Not all developers hate dealing with tool admin stuff. But if their core competence is product development and they’ve been hired to do just that, no one wants to have them spend their time and the company’s money on extraneous tasks.
To avoid creating disgruntled developers and bleeding development budget into administration tasks, companies are increasingly setting up teams whose specific responsibility it is to make sure that developers have the tools they need to do their jobs.
CloudOps v Developer Experience v common platform
Terminology lags behind reality, as it always does, and there are many names for the teams who take care of the tooling issues on behalf of the developers, or maybe the whole company.
The designated turf for these teams includes things like
- Maintenance of local or cloud software tools
- Upkeep of libraries and SDKs
- Subscriptions to and management of SaaS, DBaaS, PaaS and other fundamental cloud-based services
- Oversight of entire supported technologies
- Best practices around workplace collaboration, coding, distribution etc
- Creation of supporting materials (like introductions and instructions to the development environment and practices)
- Working with corporate IT to merge the development environment seamlessly into the company infrastructure
Teams who tackle the full spread of this smörgåsbord of developer support are starting to be called Developer Experience teams. Common platform teams focus on technical tasks related to the development platform, and CloudOps teams take care of the public cloud environments that the development teams use.
What all these types of teams have in common is the goal of removing from the developer users the burden of having to pick and maintain their resources. Centralizing the function brings savings on the corporate level due to increased bargaining power. This way companies can also ensure that all the tools meet the security and scalability requirements needed for their product development.
In this article, we’ll take a closer look at CloudOps from the viewpoint of Aiven, who provides exactly the kind of services that CloudOps teams oversee. We also have a ringside seat to witness the benefits our customers reap from this approach.
CloudOps benefits everyone
A CloudOps team vets, rolls out and maintains cloud tooling, including the subscriptions. It may also extend its mandate to the licencing details, best practices, instructions and other related miscellanea that are vitally important for the day-to-day running and long-term compatibility of the company cloud services.
Having all this centralized into one function means resources can be managed more efficiently, creating clear savings. Having a CloudOps team gives you the ability to provide cloud services for your developers most cost-effectively.
CloudOps and the environment
Unused resources means unnecessary consumption, whether we’re talking about buying too many pairs of trousers or setting up extra cloud capacity. Data isn’t often seen as contributing to climate change. It does need to be stored, however, and storing it consumes electricity and natural resources.
The catch is that if you set up a data environment, it really doesn’t care whether you fill it up with data or not; it keeps using the same amount of power whether it’s running empty or doing a vital job. So you rack up the bills, and a power plant somewhere churns out the electricity. Not buying your own hardware and maintaining a data center that sits empty for long stretches of time is actually an environment-friendly act.
The same goes for subscribing to unnecessary amounts of cloud services. If a development task requires access to a cloud service, it’s tempting in the short term to just quickly subscribe to whatever service to get the immediate task done. The result may be a myriad of small subscriptions, each of them using only a fraction of the capacity that the subscription enables.
And since one major benefit of having a CloudOps team is optimized resource management, that means CloudOps is green by its very nature.
CloudOps and the company
Centralizing all cloud operations under one team sets the stage for company-wide alignment on services. The CloudOps team makes sure that all developers are working in the same framework under the same terms and conditions.
One major benefit from service alignment is that you can automate your production workflows and management tasks. Orchestration is easy when every service is playing from the same sheet of music; if one half of the band plays blues and the other half plays EDM, the results will be… mixed, to say the least.
Another way that a centralized CloudOps team can avert costly disaster is by ensuring that all service use is compliant with whatever standard you need to comply with. They can also deliver the data you need to obtain official certifications of compliance.
CloudOps and the developer
We at Aiven enjoy it when our customer companies set up CloudOps or DEX teams because then we know that developers are being taken care of.
At our end, we know first-hand how easy it is to troubleshoot and fix issues by working with someone who has the whole cloud environment at their fingertips, instead of them having to claw their way out of a data silo first. We’re pretty sure that they prefer it, too.
When the CloudOps team has overall control of the development cloud resources, it can be used to enable self service access to resources for developers but without the burdens of subscription management and infra integration. Need a cloud set up quickly? No more using your personal e-mail to sign up for a random service, just go to your company or organisation portal and click the one you want. (That’s how the GOV.UK Digital Marketplace works, for example.)
Case in point: CloudOps at Just Eat Takeaway.com
We had a chat with Mario Mazo, CloudOps Team Lead at Just Eat Takeaway.com to find out how their company’s CloudOps team works. Just Eat Takeaway.com gets their Kafka and OpenSearch managed at Aiven.
“We set up the CloudOps team some three years ago,” Mario says. “We considered an SRE model, but came to the conclusion that it wasn’t workable for our company in our location. In the end we went with a team that wasn’t sysops or developers but rather orchestrators and maintainers. The current team understands cloud orchestration on a higher level, as it relates to systems.”
The 12-person team at Just Eat Takeaway.com covers cloud services end to end. “We’re basically an abstraction layer between developers and the cloud services they use, like AWS, Aiven, Atlas etc. It’s like an API that includes humans, processes and tools, upholding company policies and best practices. Developers don’t have to care much about how to properly set up this or that cloud resource. We also make sure our systems are compliant with the different benchmarks we have to pass as a public company with a banking license. That takes special expertise, and now developers don’t need to acquire it.”
While CloudOps teams can serve the whole company’s cloud resource needs, at Just Eat Takeaway.com they mostly work with product development. “Development teams account for approximately 90% of our users,” Mario says. “But there are some use cases where we work directly with Finance and Product Intelligence.” In most companies it’s probably true that development teams have the largest and most complex needs for public cloud services.
We asked Mario what would happen if the CloudOps team were to disappear overnight--how would they cope? “Good question… Many of the systems we manage are rather complex: Kubernetes, Istio, even Kafka before we signed up with Aiven. So I don’t know. It’s not likely to happen. We tend to joke that Kubernetes is the best job security solution on the market, so there’s that!” he laughs.
Just Eat Takeaway.com’s CloudOps team is a great example of taking the load off the developers’ shoulders and putting it where it belongs, a dedicated team of professionals with a bird’s-eye view and fine-grained control of the whole cloud infrastructure.