(edit: reply is on the first part, but i might need coffee :) )
I'm not sure the goal is to have someone who is some kind of horizontal fullstack guru in all spheres, from management to hardcore security.
Rather, people with those skills should work together, instead of staying in their silos, by automating the friction points between them all and making the process more "parallel"?
100% agree with this. The point is to have one team working together, where the team has all the required dev, ops, and security skills, or access to tools that can augment the team's skills.
Each member of the team does not need to be a superhero, they just need to be jointly responsible.
The question is how your partition your organisation. Classic is something like Development | Testing | Production. DevOps wants to integrate the different department, but you cannot build one huge team of 100 people.
You could partition by product instead Gmail | Search | Maps | etc.
You could do both partitions, which gives you Matrix Management [0]. In the software world this is more commonly known as introducing the role of a product manager in addition to a team manager.
Just to clarify, that's how I run it here but I've been told by some fairly respected devops people that it's not really devops. But in general I agree.
Well, part of the idea as I've heard it from "devops experts" is to make ops so automatic and engrained that it becomes a natural part of development.
Obviously a front-end developer wouldn't be worrying about server configuration, but they can write the integration tests and deploy when they are done without involving another team assuming the test coverage is sufficient / code review is done / etc.
I'm not sure the goal is to have someone who is some kind of horizontal fullstack guru in all spheres, from management to hardcore security. Rather, people with those skills should work together, instead of staying in their silos, by automating the friction points between them all and making the process more "parallel"?