What is the goal of operations?
April 11, 2021"It's not operation's job to keep the site stable and fast. Operation's job is to enable the business."
Most people believe it is the job of developers to add new features to a system (i.e. introduce change). They contrast this to the job of operations, which is to ensure the system is fast and stable (i.e. prevent change to the system). It’s this very “Dev vs. Ops” concept that lead to the birth of DevOps, which tries to change this goal.
John Allspaw and Paul Hammond challenged this in their seminal 2009 talk 10+ Deploys per Day.
[It is not] operation’s job is to keep the site stable and fast. Operation’s job is to enable the business.
That sounds pretty obvious. But what business doesn’t want a stable and fast system?
Allspaw goes on:
If the business requires that the site go down every two weeks, even though you’re the largest online gaming platform, and you have millions of paying customers, those millions of customers might be quite fine for you to have availability of 97%. Screw the 5 9s. This is just truth. It just so happens that keeping the site stable and fast is something you see as common across business requirements.
Not every business needs a fast and stable system. For many businesses, the opportunity cost of stability is far greater than the value of fast innovation. In fact, I might be so bold as to say this is true for most businesses at some point.
What's the difference between DevOps and Site Reliability Engineering?
Simply put, SRE is only the operations side of DevOps.
Taylorism is dead. Long live Taylorism!
Taylorism has gotten a lot of flack for being inhumane at worst, and ineffective at best. But DevOps is about applying Taylorism to computer systems.
I love the term "Full-Cycle Developer", as I think it helps encapsulate the goal of the U-Shaped Cell.