Ingeniously Simple
Published in

Ingeniously Simple

It’s DevOps all the way down

One of the more memorable phrases of the DevOps movement is Amazon CTO Werner Vogel’s 2006 statement: ‘You build it, you run it’. As definitions of DevOps go, its clarity and measurability have made it foundational to DevOps transformations ever since. Like many DevOps principles it emphasises decentralisation and autonomy, favouring cross-functional teams owning a solution end-to-end over the choreographed dance of functional teams. But how much can a team really ‘run it’ given the cognitive load on a typical engineering team?

Often, the reality is that no matter how thinly we slice a modern product, that slice turns out to contain a very deep tech stack. Under our team’s microservice, might be open-source application server, in a container, on Kubernetes, on Linux, on a virtual machine, in a public IaaS cloud. Do we expect our team to be Kubernetes administrators?

This isn’t DevOps — it’s kitbashing a whole IT department into a team. We need to shift our thinking from seeing DevOps accountability as a vertical slice of everything to being a horizontal layer. Modern software is built on platforms, which are in turn built on other platforms, and so on. These platforms pull toil from the teams they serve; commoditising, outsourcing, or investing in tooling to automate it out of existence, creating more time for our team to invest in value adding work for competitive advantage. It’s what unlocks accelerating rates of cheap innovation as we stand on the shoulders of others, but the abstraction also drives increasing complexity into the stack.

Fortunately for our team, complexity gets packaged up as a service and increasingly commoditised by the layers below. If we lay this out on a Wardley map, there’s a chain of dependencies on underlying platforms and the teams that deliver them. Crucially, each of these platform teams is also a DevOps team responsible for delivery of their slice of the overall tech stack as a service. Each one is ideally guided by the four key metrics covering both development and operational delivery of their layer. It’s DevOps all the way down.

At Redgate we started investing seriously in our platform layer in 2019, to underpin a business transformation from highly decoupled product teams to an integrated enterprise-ready portfolio. As we’ve journeyed from initial concepts to portfolio re-platforming, we’ve had to consider how to adapt our dev and ops organisational structure to make the transition to production. This is complicated by the breadth of our product portfolio, meaning the platform has to target on-premise, SaaS, and our internal systems.

Organisationally, we can unpack the internal platform to a platform group consisting of three teams that, amongst other things, play a significant platform role (remembering that in practice abstractions like this are leaky). We have a team that releases environment specific distributions of the platform based on our shared reference architecture and tech stack, we have a team that operates production instances of those distributions, and we have a team that delivers shared services running on those platforms.

Each of these teams is a DevOps team, for some their output might be mostly code, for others their output might be mostly infrastructure, but the job isn’t finished by throwing that work over the fence to the next team — the measure of a team is how their work runs in the production environment.

--

--

--

How Redgate build ingeniously simple products, from inception to delivery.

Recommended from Medium

APNewsNFT Airdrop Overview

Create Facebook Chat Bot with ASP.NET CORE 2.0 and Api.ai

Prysm Testnet v0.9.3 Release Info

How to install Nexus Repository Manager 3 as a Service on AWS EC2 Instance

Developing inside a Container

Introducing VIRNECT AR Solution 2.0 updates — VIRNECT Make (Part 3)

How Much Does It Cost to Create a Mobile Application for Your Business?

Python Best Practices

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Mark Cheverton

Mark Cheverton

Geek, maker, artist, and entrepreneur. CTO at Redgate Software

More from Medium

Instana and IBM i Monitoring & Observability

Trunk-Based Development for Higher Operational Performance

Making Alerts Actionable

How to measure team performance without sprints? — Other Replies.