SlideShare a Scribd company logo
DevOps
All slides and pictures in this presentation,
even those based on real presentations and ideas,
are entirely an opinionated view of devops by a
single person and does not speak for any sane group
of people, vendor, cthulhu or the giant spaghetti monster
DevOps is not a Culture
or a job description
or a methodology
or a tool
Developer’s job description:
Take requirements and build
software
They are:
Experts coders, modelers,
problem resolvers, adapting to
change, complex systems, etc.
Developer’s responsibilities:
• Write the software
• Model data schema
• Design system architecture
• Prepare shippable software
• Fixing bugs
• “It works on my machine!”
Operation’s job description:
Make sure the product runs and
stays running.
They are:
Experts at managing clouds,
networking, storage,
security, handling failures,
preventing attacks.
Operation’s responsibilities:
• Ensure production is running
• Minimize risk to production
– Risk from change
– Risk from malfunctions
– Risk from attacks
• Mitigate problems
Ever seen NASA Mission Control?
Operations are measured by production stability
Stabilize production minimize risk
Risk caused by malfunctions, attacks, change
Change introduced by developers
Operations are measured by production stability
Stabilize production minimize risk
Risk caused by malfunctions, attacks, change
Change introduced by developers
Operations responsibility is to
prevent developers from
introducing change
We want stability!
Developers Operations
We want change!
We want stability!
We are measured by
our stability.
It is our job!
Developers Operations
We want change!
We are measured by
our changes.
It is our job!
Change the Responsibility
Developer’s responsibilities (devops):
• Write the software, etc.
• Prepare shippable software
• Fixing bugs
• Mitigate risk due to changes
• Ensure stability due to changes
Developer’s responsibilities (devops):
Developers own the change and its
impact to production
Which means for the developer
• Pre-deployment guards
– compilers, unit tests, integration tests,
tests…
• Predictable deployment
– Automated deployment, immutable
servers
• Post-deployment guards
– Monitoring, alerting, auto-rollback, etc.
Operation’s responsibilities (devops):
• Ensure production is running
• Minimize risk to production
– Risk from change
– Risk from malfunctions
– Risk from attacks
• Mitigate some problems
Operations enable developers to take
ownership of changes
Which means for the operations
• Focus on malfunctions and attacks
• Focus on system topology
• Help developers build guards
– Pre-deployment guards
– Predictable deployment
– Post-deployment guards
DevOps is an organizational
structure at which professional
responsibility is distributed by
owners and enablers
It’s about responsibility
Does the same applies to other
functions in the organization?
Not only developers and
operations?

More Related Content

DevOps is not a Culture. It is about responsibility

  • 1. DevOps All slides and pictures in this presentation, even those based on real presentations and ideas, are entirely an opinionated view of devops by a single person and does not speak for any sane group of people, vendor, cthulhu or the giant spaghetti monster
  • 2. DevOps is not a Culture or a job description or a methodology or a tool
  • 3. Developer’s job description: Take requirements and build software They are: Experts coders, modelers, problem resolvers, adapting to change, complex systems, etc.
  • 4. Developer’s responsibilities: • Write the software • Model data schema • Design system architecture • Prepare shippable software • Fixing bugs • “It works on my machine!”
  • 5. Operation’s job description: Make sure the product runs and stays running. They are: Experts at managing clouds, networking, storage, security, handling failures, preventing attacks.
  • 6. Operation’s responsibilities: • Ensure production is running • Minimize risk to production – Risk from change – Risk from malfunctions – Risk from attacks • Mitigate problems
  • 7. Ever seen NASA Mission Control?
  • 8. Operations are measured by production stability Stabilize production minimize risk Risk caused by malfunctions, attacks, change Change introduced by developers
  • 9. Operations are measured by production stability Stabilize production minimize risk Risk caused by malfunctions, attacks, change Change introduced by developers Operations responsibility is to prevent developers from introducing change
  • 10. We want stability! Developers Operations We want change!
  • 11. We want stability! We are measured by our stability. It is our job! Developers Operations We want change! We are measured by our changes. It is our job!
  • 13. Developer’s responsibilities (devops): • Write the software, etc. • Prepare shippable software • Fixing bugs • Mitigate risk due to changes • Ensure stability due to changes
  • 14. Developer’s responsibilities (devops): Developers own the change and its impact to production
  • 15. Which means for the developer • Pre-deployment guards – compilers, unit tests, integration tests, tests… • Predictable deployment – Automated deployment, immutable servers • Post-deployment guards – Monitoring, alerting, auto-rollback, etc.
  • 16. Operation’s responsibilities (devops): • Ensure production is running • Minimize risk to production – Risk from change – Risk from malfunctions – Risk from attacks • Mitigate some problems Operations enable developers to take ownership of changes
  • 17. Which means for the operations • Focus on malfunctions and attacks • Focus on system topology • Help developers build guards – Pre-deployment guards – Predictable deployment – Post-deployment guards
  • 18. DevOps is an organizational structure at which professional responsibility is distributed by owners and enablers
  • 20. Does the same applies to other functions in the organization? Not only developers and operations?