Because it treats Dev and Ops as having identical, equivalent skill sets. Attempting to make this true invariably leads to disaster. In over 30 years of professional software development, I've never seen the problems it purports to solve.
They are similar skill sets but the domains are different. I am not expected to understand every javascript framework that is thrown at developers and they are not expected to know the inner workings of our networking, kubernetes or service meshes. I will concede that every company wanting an Ops person to be a full fledged software developer is a little ridiculous.
I have been at this for 25+ years and I remember the days of silos. I remember developers passing off code to QA and it coming back days later with bugs. I also remember a lot of 'not my problem' coming back from developers. Sometimes it wasn't their problem; often it was.
Either way, the person with intimate knowledge of how the code works should be the first person that looks at the problem. In SaaS, that is production and should be the developers (within reason).
As Ops, my goal is to make that as easy for possible for developers. That means automating everything I can so that the right tools are in place for deploying, monitoring and alerting are there. It means that I have to automate spinning up and destroying infrastructure as quick and easy as possible so that we can meet your needs and also keep costs down.
I have also seen companies fail at becoming 'devops' in the most terrible way. They took developers and made them own everything from code to deployment to VMs. The developers had so many pieces to understand that the only guarantee was failure. That was a terrible startup to work at.
> They are similar skill sets but the domains are different.
Exactly. They're specializations, like heart surgeon vs. orthopedic surgeon.
> I have been at this for 25+ years and I remember the days of silos.
32 years for me. Silos evolved out of the wild west of the 90's and early 2000's. Which evolved out of the strict controls of early computers run by a cult of Operators where the devs couldn't even access the machine directly. It's a cycle, where management tries to remove people, only to have to put them back later. I've seen it over and over.
> I remember developers passing off code to QA and it coming back days later with bugs.
It is literally QA's job to find bugs that developers missed.
> In SaaS, that is production and should be the developers
SaaS or not doesn't have anything to do with it.
> As Ops, my goal is to make that as easy for possible for developers.
As a developer, my goal is to deliver high quality code that meets the requirements for performance, stability, monitoring, security, and functionality.
> They took developers and made them own everything from code to deployment to VMs. The developers had so many pieces to understand that the only guarantee was failure.
I've never seen DevOps done any other way. Hence my original comment.