In DevOps, Dev is Killing Ops
Disclaimer: All ideas are my own.
Note: Dev refers to software application developers. Ops refers to folks who run these applications and ensure their health, performance, and security. DevOps refers to well... you know.
The Crime
Your Honor, it started back in 2009. The then Ops folks, often under the broad moniker of IT, were slow, inconsiderate and sometimes simply absent to address the growing needs of Devs. Even simple demands, such as a small Virtual Machine, required begging, cajoling and filing tickets (ugh!). As luck would have it, Jeff B. and Werner V., heard the Dev plea. EC2 and S3 came along giving birth to the movement empowering Devs. Little did we know that the ensuing over-zealous focus on Dev community from 2009 - now, would result in an almost fatal fate for Ops. The charges that we bring here are that Devs are killing Ops, despite being united under a farcical marriage called DevOps. Next, we will present various exhibits of how this killing is happening.
Weapons of Ops Destruction (WODs)
Public Cloud: This directly annihilated the "Infra Ops" category. Folks who would wear the NetApp, Cisco certifications or possess mad PXE boot skills have been greatly marginalized. AWS alone is $15 Billion+ in 2017 and you can pull your favorite back-of-the-envelope numbers to calculate the number of infra-ops casualties. Can't squarely blame Devs here because Ops you saw this coming by taking months to provision a damn Virtual Machine!
CI/CD: With the rise of public clouds, came along the rise of CI/CD pipelines. On one end of this pipeline, the infrastructure provisioning became "infra-as-a-code" with the pervasive use of Terraform, Cloudformation, etc. And on the other end, technologies such as Vagrant, Packer, Docker, etc. made it easy to package code and hurl it down the pipeline. All this increase in velocity was great for the Dev side of the house but what do you think was the impact on the Ops side? Well, that's why we got Dev and Ops married so that they can have a pillow-talk to address this situation. Great, well jokes aside, what tools did we make for Ops to handle the CI/CD acceleration in software development? Did I hear unit tests? Every modern application is an intricate web of dependencies. A sneeze in one section of the code can cause an unexpected stroke in another section. Unit tests don't even come close to evaluating the impact of changes on applications. Not sure who all the casualty here are but definitely ain't the guys happily hurling code down the pipe!
Containers: Ah, the recent darling of silicon valley. Beautiful technology, somewhat simplifying at least two major headaches - package management and portability of the packages. Hmm, but for the Ops guys the proposition is to rethink storage, rethink networking, rethink scheduling, rethink log collection, rethink monitoring, rethink security... and by-the-way that whole virtualization thing you just wrapped-up, throw it out and go back to the bare-metal OS. What!? A large collection of bare-metal servers is pain-in-the-neck to manage due to the incompatibility of drivers, etc. Well, who gives a sh**. For all we care as Devs, run the containers on public clouds! Ops please go back to the point #1.
Microservices: Your Honor, we could go on for quite some time with these exhibits. Suffice to say that for almost a decade the over zealous Dev camp has resulted in a fatal situation for Ops.
A Plea Bargain
Drama aside, to all my Dev colleagues out there, please be considerate and stop killing your Ops partners. Any application is 10% development and 90% operations. Or to paraphrase famous title from Dr. Suess, "Oh, the thinks you need to run your thinks". Think load balancers, proxies, firewalls, scale-up/down, backup/restore, roll back/forward, canary/blue-green, monitoring, troubleshooting, securing... If only the Dev and Ops can coordinate and address not just the speed of software development but also operational needs, then software can reliably eat the world.
(End Note: Rumor has it that just like Brangelina DevOps is getting a divorce. And I hear that some Ops are taking a new name: SRE.)
Sales Consultancy
7 年Very pertinent, especially if you consider that in most mature businesses, legacy is running the business, with some business critical apps decades old. DevOps is not going to replace them in hurry.
Partner Development Lead @ AWS Switzerland
7 年Isn't Devops just the old term for cloud native ?
Technology Principal | Distributed Systems | Leadership
7 年I am interested in the context of the 2001 reference. Care to elaborate? That image is one of the greatest of the 20th Centuries.