SlideShare a Scribd company logo
1 of 20
Download to read offline
Blameless System Design
Douglas Land
Vast.com, Inc.
I break systems… a LOT
● Auth
● Syslog
● Chef
● Ambassadors
● Prod Frontends
Sometimes I ‘break’ systems on purpose...
● Service discovery by chef
● 90% code in prod
● No shared storage for cloudstack
Sometimes you just need do things.
Higher standards
And yet, I still hold others to a higher standard..
● Servers still on public internet???
● Created a flat VLAN when we did move to private IPs???
● No centralized management of virtualization infrastructure???
● The only 'shared storage' is via DRBD and ha.d???
Technical debtor’s prison
We’re obsessed with technical debt
Qualifying it:
● Application Debt
● Infrastructure Debt
● Architecture Debt
Quantifying it:
● size of code base
● code coverage
● coupling and cohesion reports
● cyclomatic complexity
● Halstead complexity measures
The myth of technical debt
Peter Norvig, “All code is liability”
Not actually technical debt:
● Maintenance
● Changes in understanding
● Operational inertia
● Poor code choices
● Dependency liabilities
So what is technical debt?
Technical debt is the choices we intentionally make to speed up the development
or implementation of systems, and which we acknowledge will need to be
changed later.
Technical debt is the result of an Efficiency-Thoroughness Trade-Off at an
individual level.
Technical debt is the output of a project constraint model at an organizational
level.
The blame game
Shouldn't we stop blaming people for making the trade-offs they're forced to
make?
Being Blameless
● If we remove fear we will have a more
honest conversation about trade-offs
● if we're honest about those trade-offs
crisis might be averted altogether
● If we understand our history, we won't be
destined to repeat it
What is blameless system design?
Assuming goodwill
Blameless post-mortems
Empathy
Experimentation
Honesty
Communication
Assume Goodwill
Your co-worker probably doesn’t come into work every day with
the intent of harming you or the organization.
Blameless Post-mortems
“We must strive to understand that accidents don’t
happen because people gamble and lose.
Accidents happen because the person believes that:
…what is about to happen is not possible,
…or what is about to happen has no connection to
what they are doing,
…or that the possibility of getting the intended
outcome is well worth whatever risk there is.”
- Erik Hollnagel
Empathy
● Reject ‘contempt culture’
● Focus on the positive
● Consider others’ perspectives
Experimentation
The Engineering Design Process
● Define the Problem
● Do Background Research
● Specify Requirements
● Brainstorm Solutions
● Choose the Best Solution
● Do Development Work
● Build a Prototype
● Test and Redesign
Honesty
● Publish ALL your results
● Document ALL your decisions
● Be honest about trade-offs
● Track mitigations
Communication
● Broadcast expectations
● Honor achievements
● Make doc easy to find
● Open discussions
● Well define feedback
channels
Did someone say devops?
● Culture
● Measurement
● Sharing
● Feedback loops
The bad
It’s hard to change culture and get away from a retribution
culture and the RCA mentality
It’s hard to get over hindsight bias.
It’s a lot of work to encourage openness and honesty, and
define what that looks like.
It’s hard to get over their impostor syndrome and / or contempt
cultures.
The good
● Remove fear
● Encourage ‘risk’
● Create feedback
● Reduce redundant learning
● Improve working environment, trust
Douglas Land - Director of operations, Vast.com, Inc.
doug@webuilddevops.com | @webuilddevops
Some References:
http://www.datical.com/blog/technical-debt-devops/
http://laughingmeme.org/2016/01/10/towards-an-understanding-of-technical-debt/
http://blog.aurynn.com/86/contempt-culture
http://erikhollnagel.com/ideas/etto-principle/index.html
http://indecorous.com/fallible_humans/
https://hbr.org/2003/05/it-doesnt-matter/ar/pr
https://codeascraft.com/2014/07/18/just-culture-resources/
http://sidneydekker.com/just-culture/

More Related Content

Viewers also liked

2016 - Open Mic - IGNITE - Open Infrastructure = ANY Infrastructure
2016 - Open Mic - IGNITE - Open Infrastructure = ANY Infrastructure2016 - Open Mic - IGNITE - Open Infrastructure = ANY Infrastructure
2016 - Open Mic - IGNITE - Open Infrastructure = ANY Infrastructuredevopsdaysaustin
 
2016 - IGNITE - A Developer's Progress: The mistaeks that have made me who I am
2016 - IGNITE - A Developer's Progress: The mistaeks that have made me who I am2016 - IGNITE - A Developer's Progress: The mistaeks that have made me who I am
2016 - IGNITE - A Developer's Progress: The mistaeks that have made me who I amdevopsdaysaustin
 
2016 - IGNITE - The Cynefin Model for Operational Transformation
2016 - IGNITE - The Cynefin Model for Operational Transformation2016 - IGNITE - The Cynefin Model for Operational Transformation
2016 - IGNITE - The Cynefin Model for Operational Transformationdevopsdaysaustin
 
2016 - Safely Removing the Last Roadblock to Continuous Delivery
2016 - Safely Removing the Last Roadblock to Continuous Delivery2016 - Safely Removing the Last Roadblock to Continuous Delivery
2016 - Safely Removing the Last Roadblock to Continuous Deliverydevopsdaysaustin
 
Devops at 5,016 Feet
Devops at 5,016 FeetDevops at 5,016 Feet
Devops at 5,016 FeetJ. Paul Reed
 
2016 - IGNITE - How Do I Even Swarm
2016 - IGNITE - How Do I Even Swarm2016 - IGNITE - How Do I Even Swarm
2016 - IGNITE - How Do I Even Swarmdevopsdaysaustin
 
2016 - IGNITE - Terraform to go from Zero to Prod in less than 1 month and TH...
2016 - IGNITE - Terraform to go from Zero to Prod in less than 1 month and TH...2016 - IGNITE - Terraform to go from Zero to Prod in less than 1 month and TH...
2016 - IGNITE - Terraform to go from Zero to Prod in less than 1 month and TH...devopsdaysaustin
 
DOES16 San Francisco - Gene Kim & John Willis - Beyond the Phoenix Project
DOES16 San Francisco - Gene Kim & John Willis - Beyond the Phoenix ProjectDOES16 San Francisco - Gene Kim & John Willis - Beyond the Phoenix Project
DOES16 San Francisco - Gene Kim & John Willis - Beyond the Phoenix ProjectGene Kim
 
Fixing Your Org By Continually Breaking It
Fixing Your Org By Continually Breaking ItFixing Your Org By Continually Breaking It
Fixing Your Org By Continually Breaking ItJ. Paul Reed
 
2016 - Serverless Microservices on AWS with API Gateway and Lambda
2016 - Serverless Microservices on AWS with API Gateway and Lambda2016 - Serverless Microservices on AWS with API Gateway and Lambda
2016 - Serverless Microservices on AWS with API Gateway and Lambdadevopsdaysaustin
 

Viewers also liked (11)

2016 - Open Mic - IGNITE - Open Infrastructure = ANY Infrastructure
2016 - Open Mic - IGNITE - Open Infrastructure = ANY Infrastructure2016 - Open Mic - IGNITE - Open Infrastructure = ANY Infrastructure
2016 - Open Mic - IGNITE - Open Infrastructure = ANY Infrastructure
 
Cynefin framework
Cynefin frameworkCynefin framework
Cynefin framework
 
2016 - IGNITE - A Developer's Progress: The mistaeks that have made me who I am
2016 - IGNITE - A Developer's Progress: The mistaeks that have made me who I am2016 - IGNITE - A Developer's Progress: The mistaeks that have made me who I am
2016 - IGNITE - A Developer's Progress: The mistaeks that have made me who I am
 
2016 - IGNITE - The Cynefin Model for Operational Transformation
2016 - IGNITE - The Cynefin Model for Operational Transformation2016 - IGNITE - The Cynefin Model for Operational Transformation
2016 - IGNITE - The Cynefin Model for Operational Transformation
 
2016 - Safely Removing the Last Roadblock to Continuous Delivery
2016 - Safely Removing the Last Roadblock to Continuous Delivery2016 - Safely Removing the Last Roadblock to Continuous Delivery
2016 - Safely Removing the Last Roadblock to Continuous Delivery
 
Devops at 5,016 Feet
Devops at 5,016 FeetDevops at 5,016 Feet
Devops at 5,016 Feet
 
2016 - IGNITE - How Do I Even Swarm
2016 - IGNITE - How Do I Even Swarm2016 - IGNITE - How Do I Even Swarm
2016 - IGNITE - How Do I Even Swarm
 
2016 - IGNITE - Terraform to go from Zero to Prod in less than 1 month and TH...
2016 - IGNITE - Terraform to go from Zero to Prod in less than 1 month and TH...2016 - IGNITE - Terraform to go from Zero to Prod in less than 1 month and TH...
2016 - IGNITE - Terraform to go from Zero to Prod in less than 1 month and TH...
 
DOES16 San Francisco - Gene Kim & John Willis - Beyond the Phoenix Project
DOES16 San Francisco - Gene Kim & John Willis - Beyond the Phoenix ProjectDOES16 San Francisco - Gene Kim & John Willis - Beyond the Phoenix Project
DOES16 San Francisco - Gene Kim & John Willis - Beyond the Phoenix Project
 
Fixing Your Org By Continually Breaking It
Fixing Your Org By Continually Breaking ItFixing Your Org By Continually Breaking It
Fixing Your Org By Continually Breaking It
 
2016 - Serverless Microservices on AWS with API Gateway and Lambda
2016 - Serverless Microservices on AWS with API Gateway and Lambda2016 - Serverless Microservices on AWS with API Gateway and Lambda
2016 - Serverless Microservices on AWS with API Gateway and Lambda
 

Similar to 2016 - IGNITE - Blameless System Design

Devops, the future is here it's not evenly distributed yet
Devops, the future is here it's not evenly distributed yetDevops, the future is here it's not evenly distributed yet
Devops, the future is here it's not evenly distributed yetKris Buytaert
 
Drupal and Devops , the Survey Results
Drupal and Devops , the Survey ResultsDrupal and Devops , the Survey Results
Drupal and Devops , the Survey ResultsKris Buytaert
 
Break Up the Monolith- Testing Microservices by Marcus Merrell
Break Up the Monolith- Testing Microservices by Marcus MerrellBreak Up the Monolith- Testing Microservices by Marcus Merrell
Break Up the Monolith- Testing Microservices by Marcus MerrellSauce Labs
 
Path Dependent Development (PyCon AU)
Path Dependent Development (PyCon AU)Path Dependent Development (PyCon AU)
Path Dependent Development (PyCon AU)ncoghlan_dev
 
Dev Ops & Secops & Bears, oh my!
Dev Ops & Secops & Bears, oh my!Dev Ops & Secops & Bears, oh my!
Dev Ops & Secops & Bears, oh my!Dwolla
 
From Technical Debt to Technical Health
From Technical Debt to Technical HealthFrom Technical Debt to Technical Health
From Technical Debt to Technical HealthDeclan Whelan
 
Devops, Secops, Opsec, DevSec *ops *.* ?
Devops, Secops, Opsec, DevSec *ops *.* ?Devops, Secops, Opsec, DevSec *ops *.* ?
Devops, Secops, Opsec, DevSec *ops *.* ?Kris Buytaert
 
Post agile confessions
Post agile confessionsPost agile confessions
Post agile confessionsStojan Peshov
 
The Rules of Network Automation - Interop/NYC 2014
The Rules of Network Automation - Interop/NYC 2014The Rules of Network Automation - Interop/NYC 2014
The Rules of Network Automation - Interop/NYC 2014Jeremy Schulman
 
Picking the right architecture and sticking to it
Picking the right architecture and sticking to itPicking the right architecture and sticking to it
Picking the right architecture and sticking to itPetter Holmström
 
Post-Agile Methodologies and all that Jazz
Post-Agile Methodologies and all that JazzPost-Agile Methodologies and all that Jazz
Post-Agile Methodologies and all that JazzStojan Peshov
 
Path dependent-development (PyCon India)
Path dependent-development (PyCon India)Path dependent-development (PyCon India)
Path dependent-development (PyCon India)ncoghlan_dev
 
Blameless system design - annotated
Blameless system design  - annotatedBlameless system design  - annotated
Blameless system design - annotatedDouglas Land
 
Bootstrapping an Open-Source Program Office at Blue Cross NC
Bootstrapping an Open-Source Program Office at Blue Cross NCBootstrapping an Open-Source Program Office at Blue Cross NC
Bootstrapping an Open-Source Program Office at Blue Cross NCAll Things Open
 
Devops, the future is here, it's just not evenly distributed yet.
Devops, the future is here, it's just not evenly distributed yet.Devops, the future is here, it's just not evenly distributed yet.
Devops, the future is here, it's just not evenly distributed yet.Kris Buytaert
 
Tactical Application Security: Getting Stuff Done - Black Hat Briefings 2015
Tactical Application Security: Getting Stuff Done - Black Hat Briefings 2015Tactical Application Security: Getting Stuff Done - Black Hat Briefings 2015
Tactical Application Security: Getting Stuff Done - Black Hat Briefings 2015Cory Scott
 

Similar to 2016 - IGNITE - Blameless System Design (20)

Devops, the future is here it's not evenly distributed yet
Devops, the future is here it's not evenly distributed yetDevops, the future is here it's not evenly distributed yet
Devops, the future is here it's not evenly distributed yet
 
Drupal and Devops , the Survey Results
Drupal and Devops , the Survey ResultsDrupal and Devops , the Survey Results
Drupal and Devops , the Survey Results
 
Break Up the Monolith- Testing Microservices by Marcus Merrell
Break Up the Monolith- Testing Microservices by Marcus MerrellBreak Up the Monolith- Testing Microservices by Marcus Merrell
Break Up the Monolith- Testing Microservices by Marcus Merrell
 
Engineer - Mastering the Art of Software
Engineer - Mastering the Art of SoftwareEngineer - Mastering the Art of Software
Engineer - Mastering the Art of Software
 
Path Dependent Development (PyCon AU)
Path Dependent Development (PyCon AU)Path Dependent Development (PyCon AU)
Path Dependent Development (PyCon AU)
 
Dev Ops & Secops & Bears, oh my!
Dev Ops & Secops & Bears, oh my!Dev Ops & Secops & Bears, oh my!
Dev Ops & Secops & Bears, oh my!
 
From Technical Debt to Technical Health
From Technical Debt to Technical HealthFrom Technical Debt to Technical Health
From Technical Debt to Technical Health
 
Devops, Secops, Opsec, DevSec *ops *.* ?
Devops, Secops, Opsec, DevSec *ops *.* ?Devops, Secops, Opsec, DevSec *ops *.* ?
Devops, Secops, Opsec, DevSec *ops *.* ?
 
Technical Debt.pptx
Technical Debt.pptxTechnical Debt.pptx
Technical Debt.pptx
 
Post agile confessions
Post agile confessionsPost agile confessions
Post agile confessions
 
The Rules of Network Automation - Interop/NYC 2014
The Rules of Network Automation - Interop/NYC 2014The Rules of Network Automation - Interop/NYC 2014
The Rules of Network Automation - Interop/NYC 2014
 
Picking the right architecture and sticking to it
Picking the right architecture and sticking to itPicking the right architecture and sticking to it
Picking the right architecture and sticking to it
 
Introduction to TDD and BDD
Introduction to TDD and BDDIntroduction to TDD and BDD
Introduction to TDD and BDD
 
Post-Agile Methodologies and all that Jazz
Post-Agile Methodologies and all that JazzPost-Agile Methodologies and all that Jazz
Post-Agile Methodologies and all that Jazz
 
Path dependent-development (PyCon India)
Path dependent-development (PyCon India)Path dependent-development (PyCon India)
Path dependent-development (PyCon India)
 
Blameless system design - annotated
Blameless system design  - annotatedBlameless system design  - annotated
Blameless system design - annotated
 
Bootstrapping an Open-Source Program Office at Blue Cross NC
Bootstrapping an Open-Source Program Office at Blue Cross NCBootstrapping an Open-Source Program Office at Blue Cross NC
Bootstrapping an Open-Source Program Office at Blue Cross NC
 
Devops, the future is here, it's just not evenly distributed yet.
Devops, the future is here, it's just not evenly distributed yet.Devops, the future is here, it's just not evenly distributed yet.
Devops, the future is here, it's just not evenly distributed yet.
 
Real world dev ops
Real world dev opsReal world dev ops
Real world dev ops
 
Tactical Application Security: Getting Stuff Done - Black Hat Briefings 2015
Tactical Application Security: Getting Stuff Done - Black Hat Briefings 2015Tactical Application Security: Getting Stuff Done - Black Hat Briefings 2015
Tactical Application Security: Getting Stuff Done - Black Hat Briefings 2015
 

More from devopsdaysaustin

2016 - Open Mic - IGNITE - The Power of #DadOps for women in tech
2016 - Open Mic - IGNITE - The Power of #DadOps for women in tech2016 - Open Mic - IGNITE - The Power of #DadOps for women in tech
2016 - Open Mic - IGNITE - The Power of #DadOps for women in techdevopsdaysaustin
 
2016 - Open Mic - IGNITE - This is a Tire Fire
2016 - Open Mic - IGNITE - This is a Tire Fire2016 - Open Mic - IGNITE - This is a Tire Fire
2016 - Open Mic - IGNITE - This is a Tire Firedevopsdaysaustin
 
2016 - IGNITE - An ElasticSearch Cluster Named George Armstrong Custer
2016 - IGNITE - An ElasticSearch Cluster Named George Armstrong Custer2016 - IGNITE - An ElasticSearch Cluster Named George Armstrong Custer
2016 - IGNITE - An ElasticSearch Cluster Named George Armstrong Custerdevopsdaysaustin
 
2016 - IGNITE - No Assholes
2016 - IGNITE - No Assholes2016 - IGNITE - No Assholes
2016 - IGNITE - No Assholesdevopsdaysaustin
 
2016 - IGNITE - Real Heroes Draw Pictures
2016 - IGNITE - Real Heroes Draw Pictures2016 - IGNITE - Real Heroes Draw Pictures
2016 - IGNITE - Real Heroes Draw Picturesdevopsdaysaustin
 
2016 - IGNITE - DevOps or NoOps
2016 - IGNITE - DevOps or NoOps2016 - IGNITE - DevOps or NoOps
2016 - IGNITE - DevOps or NoOpsdevopsdaysaustin
 
2016 - Orchestrating multi-container apps: How I came to love the pod
2016 - Orchestrating multi-container apps: How I came to love the pod2016 - Orchestrating multi-container apps: How I came to love the pod
2016 - Orchestrating multi-container apps: How I came to love the poddevopsdaysaustin
 
2016 - Fail Proof Ways to Run Beautiful Tests Regardless Of Browser Choice
2016 - Fail Proof Ways to Run Beautiful Tests Regardless Of Browser Choice2016 - Fail Proof Ways to Run Beautiful Tests Regardless Of Browser Choice
2016 - Fail Proof Ways to Run Beautiful Tests Regardless Of Browser Choicedevopsdaysaustin
 
2016 - You Don't Belong Here: Dealing with Impostor Syndrome
2016 - You Don't Belong Here: Dealing with Impostor Syndrome2016 - You Don't Belong Here: Dealing with Impostor Syndrome
2016 - You Don't Belong Here: Dealing with Impostor Syndromedevopsdaysaustin
 
2016 - Compliance as Code - InSpec
2016 - Compliance as Code - InSpec2016 - Compliance as Code - InSpec
2016 - Compliance as Code - InSpecdevopsdaysaustin
 
2016 - Easing Your Way Into Docker: Lessons From a Journey to Production
2016 - Easing Your Way Into Docker: Lessons From a Journey to Production2016 - Easing Your Way Into Docker: Lessons From a Journey to Production
2016 - Easing Your Way Into Docker: Lessons From a Journey to Productiondevopsdaysaustin
 
2016 - IGNITE - Rugged Enterprise DevSecNetQAGovOps
2016 - IGNITE - Rugged Enterprise DevSecNetQAGovOps2016 - IGNITE - Rugged Enterprise DevSecNetQAGovOps
2016 - IGNITE - Rugged Enterprise DevSecNetQAGovOpsdevopsdaysaustin
 
2016 - IGNITE - ChatOps for Developers and Everyone Else, Too
2016 - IGNITE - ChatOps for Developers and Everyone Else, Too2016 - IGNITE - ChatOps for Developers and Everyone Else, Too
2016 - IGNITE - ChatOps for Developers and Everyone Else, Toodevopsdaysaustin
 
2016 - IGNITE - 17th Century Shipbuild and Your Failed Software Project
2016 - IGNITE - 17th Century Shipbuild and Your Failed Software Project2016 - IGNITE - 17th Century Shipbuild and Your Failed Software Project
2016 - IGNITE - 17th Century Shipbuild and Your Failed Software Projectdevopsdaysaustin
 
2016 - IGNITE - Being an introvert and at a conference, not as hellish as you...
2016 - IGNITE - Being an introvert and at a conference, not as hellish as you...2016 - IGNITE - Being an introvert and at a conference, not as hellish as you...
2016 - IGNITE - Being an introvert and at a conference, not as hellish as you...devopsdaysaustin
 
2016 - The Ops Must Be Crazy - Hack Your Team's Ops Culture With One Weird Trick
2016 - The Ops Must Be Crazy - Hack Your Team's Ops Culture With One Weird Trick2016 - The Ops Must Be Crazy - Hack Your Team's Ops Culture With One Weird Trick
2016 - The Ops Must Be Crazy - Hack Your Team's Ops Culture With One Weird Trickdevopsdaysaustin
 
2016 - DevOps Meets APIs - Model once. Benefit everywhere.
2016 - DevOps Meets APIs - Model once. Benefit everywhere.2016 - DevOps Meets APIs - Model once. Benefit everywhere.
2016 - DevOps Meets APIs - Model once. Benefit everywhere.devopsdaysaustin
 
2016 - Continuously Delivering Microservices in Kubernetes using Jenkins
2016 - Continuously Delivering Microservices in Kubernetes using Jenkins2016 - Continuously Delivering Microservices in Kubernetes using Jenkins
2016 - Continuously Delivering Microservices in Kubernetes using Jenkinsdevopsdaysaustin
 
2016 - 10 questions you should answer before building a new microservice
2016 - 10 questions you should answer before building a new microservice2016 - 10 questions you should answer before building a new microservice
2016 - 10 questions you should answer before building a new microservicedevopsdaysaustin
 
2016 - DevOpsDays Austin Keynote - 2016 State of DevOps
2016 - DevOpsDays Austin Keynote - 2016 State of DevOps2016 - DevOpsDays Austin Keynote - 2016 State of DevOps
2016 - DevOpsDays Austin Keynote - 2016 State of DevOpsdevopsdaysaustin
 

More from devopsdaysaustin (20)

2016 - Open Mic - IGNITE - The Power of #DadOps for women in tech
2016 - Open Mic - IGNITE - The Power of #DadOps for women in tech2016 - Open Mic - IGNITE - The Power of #DadOps for women in tech
2016 - Open Mic - IGNITE - The Power of #DadOps for women in tech
 
2016 - Open Mic - IGNITE - This is a Tire Fire
2016 - Open Mic - IGNITE - This is a Tire Fire2016 - Open Mic - IGNITE - This is a Tire Fire
2016 - Open Mic - IGNITE - This is a Tire Fire
 
2016 - IGNITE - An ElasticSearch Cluster Named George Armstrong Custer
2016 - IGNITE - An ElasticSearch Cluster Named George Armstrong Custer2016 - IGNITE - An ElasticSearch Cluster Named George Armstrong Custer
2016 - IGNITE - An ElasticSearch Cluster Named George Armstrong Custer
 
2016 - IGNITE - No Assholes
2016 - IGNITE - No Assholes2016 - IGNITE - No Assholes
2016 - IGNITE - No Assholes
 
2016 - IGNITE - Real Heroes Draw Pictures
2016 - IGNITE - Real Heroes Draw Pictures2016 - IGNITE - Real Heroes Draw Pictures
2016 - IGNITE - Real Heroes Draw Pictures
 
2016 - IGNITE - DevOps or NoOps
2016 - IGNITE - DevOps or NoOps2016 - IGNITE - DevOps or NoOps
2016 - IGNITE - DevOps or NoOps
 
2016 - Orchestrating multi-container apps: How I came to love the pod
2016 - Orchestrating multi-container apps: How I came to love the pod2016 - Orchestrating multi-container apps: How I came to love the pod
2016 - Orchestrating multi-container apps: How I came to love the pod
 
2016 - Fail Proof Ways to Run Beautiful Tests Regardless Of Browser Choice
2016 - Fail Proof Ways to Run Beautiful Tests Regardless Of Browser Choice2016 - Fail Proof Ways to Run Beautiful Tests Regardless Of Browser Choice
2016 - Fail Proof Ways to Run Beautiful Tests Regardless Of Browser Choice
 
2016 - You Don't Belong Here: Dealing with Impostor Syndrome
2016 - You Don't Belong Here: Dealing with Impostor Syndrome2016 - You Don't Belong Here: Dealing with Impostor Syndrome
2016 - You Don't Belong Here: Dealing with Impostor Syndrome
 
2016 - Compliance as Code - InSpec
2016 - Compliance as Code - InSpec2016 - Compliance as Code - InSpec
2016 - Compliance as Code - InSpec
 
2016 - Easing Your Way Into Docker: Lessons From a Journey to Production
2016 - Easing Your Way Into Docker: Lessons From a Journey to Production2016 - Easing Your Way Into Docker: Lessons From a Journey to Production
2016 - Easing Your Way Into Docker: Lessons From a Journey to Production
 
2016 - IGNITE - Rugged Enterprise DevSecNetQAGovOps
2016 - IGNITE - Rugged Enterprise DevSecNetQAGovOps2016 - IGNITE - Rugged Enterprise DevSecNetQAGovOps
2016 - IGNITE - Rugged Enterprise DevSecNetQAGovOps
 
2016 - IGNITE - ChatOps for Developers and Everyone Else, Too
2016 - IGNITE - ChatOps for Developers and Everyone Else, Too2016 - IGNITE - ChatOps for Developers and Everyone Else, Too
2016 - IGNITE - ChatOps for Developers and Everyone Else, Too
 
2016 - IGNITE - 17th Century Shipbuild and Your Failed Software Project
2016 - IGNITE - 17th Century Shipbuild and Your Failed Software Project2016 - IGNITE - 17th Century Shipbuild and Your Failed Software Project
2016 - IGNITE - 17th Century Shipbuild and Your Failed Software Project
 
2016 - IGNITE - Being an introvert and at a conference, not as hellish as you...
2016 - IGNITE - Being an introvert and at a conference, not as hellish as you...2016 - IGNITE - Being an introvert and at a conference, not as hellish as you...
2016 - IGNITE - Being an introvert and at a conference, not as hellish as you...
 
2016 - The Ops Must Be Crazy - Hack Your Team's Ops Culture With One Weird Trick
2016 - The Ops Must Be Crazy - Hack Your Team's Ops Culture With One Weird Trick2016 - The Ops Must Be Crazy - Hack Your Team's Ops Culture With One Weird Trick
2016 - The Ops Must Be Crazy - Hack Your Team's Ops Culture With One Weird Trick
 
2016 - DevOps Meets APIs - Model once. Benefit everywhere.
2016 - DevOps Meets APIs - Model once. Benefit everywhere.2016 - DevOps Meets APIs - Model once. Benefit everywhere.
2016 - DevOps Meets APIs - Model once. Benefit everywhere.
 
2016 - Continuously Delivering Microservices in Kubernetes using Jenkins
2016 - Continuously Delivering Microservices in Kubernetes using Jenkins2016 - Continuously Delivering Microservices in Kubernetes using Jenkins
2016 - Continuously Delivering Microservices in Kubernetes using Jenkins
 
2016 - 10 questions you should answer before building a new microservice
2016 - 10 questions you should answer before building a new microservice2016 - 10 questions you should answer before building a new microservice
2016 - 10 questions you should answer before building a new microservice
 
2016 - DevOpsDays Austin Keynote - 2016 State of DevOps
2016 - DevOpsDays Austin Keynote - 2016 State of DevOps2016 - DevOpsDays Austin Keynote - 2016 State of DevOps
2016 - DevOpsDays Austin Keynote - 2016 State of DevOps
 

Recently uploaded

Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerThousandEyes
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comFatema Valibhai
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...stazi3110
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxbodapatigopi8531
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxComplianceQuest1
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsAndolasoft Inc
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsJhone kinadey
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataBradBedford3
 
Test Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendTest Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendArshad QA
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfjoe51371421
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...MyIntelliSource, Inc.
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackVICTOR MAESTRE RAMIREZ
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about usDynamic Netsoft
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...harshavardhanraghave
 

Recently uploaded (20)

Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptx
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
 
Test Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendTest Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and Backend
 
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS LiveVip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
 
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdf
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStack
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about us
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 

2016 - IGNITE - Blameless System Design

  • 1. Blameless System Design Douglas Land Vast.com, Inc.
  • 2. I break systems… a LOT ● Auth ● Syslog ● Chef ● Ambassadors ● Prod Frontends
  • 3. Sometimes I ‘break’ systems on purpose... ● Service discovery by chef ● 90% code in prod ● No shared storage for cloudstack Sometimes you just need do things.
  • 4. Higher standards And yet, I still hold others to a higher standard.. ● Servers still on public internet??? ● Created a flat VLAN when we did move to private IPs??? ● No centralized management of virtualization infrastructure??? ● The only 'shared storage' is via DRBD and ha.d???
  • 5. Technical debtor’s prison We’re obsessed with technical debt Qualifying it: ● Application Debt ● Infrastructure Debt ● Architecture Debt Quantifying it: ● size of code base ● code coverage ● coupling and cohesion reports ● cyclomatic complexity ● Halstead complexity measures
  • 6. The myth of technical debt Peter Norvig, “All code is liability” Not actually technical debt: ● Maintenance ● Changes in understanding ● Operational inertia ● Poor code choices ● Dependency liabilities
  • 7. So what is technical debt? Technical debt is the choices we intentionally make to speed up the development or implementation of systems, and which we acknowledge will need to be changed later. Technical debt is the result of an Efficiency-Thoroughness Trade-Off at an individual level. Technical debt is the output of a project constraint model at an organizational level.
  • 8. The blame game Shouldn't we stop blaming people for making the trade-offs they're forced to make?
  • 9. Being Blameless ● If we remove fear we will have a more honest conversation about trade-offs ● if we're honest about those trade-offs crisis might be averted altogether ● If we understand our history, we won't be destined to repeat it
  • 10. What is blameless system design? Assuming goodwill Blameless post-mortems Empathy Experimentation Honesty Communication
  • 11. Assume Goodwill Your co-worker probably doesn’t come into work every day with the intent of harming you or the organization.
  • 12. Blameless Post-mortems “We must strive to understand that accidents don’t happen because people gamble and lose. Accidents happen because the person believes that: …what is about to happen is not possible, …or what is about to happen has no connection to what they are doing, …or that the possibility of getting the intended outcome is well worth whatever risk there is.” - Erik Hollnagel
  • 13. Empathy ● Reject ‘contempt culture’ ● Focus on the positive ● Consider others’ perspectives
  • 14. Experimentation The Engineering Design Process ● Define the Problem ● Do Background Research ● Specify Requirements ● Brainstorm Solutions ● Choose the Best Solution ● Do Development Work ● Build a Prototype ● Test and Redesign
  • 15. Honesty ● Publish ALL your results ● Document ALL your decisions ● Be honest about trade-offs ● Track mitigations
  • 16. Communication ● Broadcast expectations ● Honor achievements ● Make doc easy to find ● Open discussions ● Well define feedback channels
  • 17. Did someone say devops? ● Culture ● Measurement ● Sharing ● Feedback loops
  • 18. The bad It’s hard to change culture and get away from a retribution culture and the RCA mentality It’s hard to get over hindsight bias. It’s a lot of work to encourage openness and honesty, and define what that looks like. It’s hard to get over their impostor syndrome and / or contempt cultures.
  • 19. The good ● Remove fear ● Encourage ‘risk’ ● Create feedback ● Reduce redundant learning ● Improve working environment, trust
  • 20. Douglas Land - Director of operations, Vast.com, Inc. doug@webuilddevops.com | @webuilddevops Some References: http://www.datical.com/blog/technical-debt-devops/ http://laughingmeme.org/2016/01/10/towards-an-understanding-of-technical-debt/ http://blog.aurynn.com/86/contempt-culture http://erikhollnagel.com/ideas/etto-principle/index.html http://indecorous.com/fallible_humans/ https://hbr.org/2003/05/it-doesnt-matter/ar/pr https://codeascraft.com/2014/07/18/just-culture-resources/ http://sidneydekker.com/just-culture/