Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Trust in DevOps

Trust in DevOps

A talk from DevOpsDays Amsterdam 2013, about the concept of trust, and how to scale it beyond individuals. Video is at http://www.youtube.com/watch?v=UvmZwrdUTsI

30b9dad80fde9e44a70c92a6b4614a0a?s=128

Sam Eaton

June 15, 2013
Tweet

Transcript

  1. Trust In DevOps Sam Eaton @thesamoth

  2. Who is this guy and why should we trust anything

    he says?!
  3. What do don’t we mean by trust?

  4. Trust isn’t faith

  5. The Babel Fish is a dead giveaway

  6. Trust isn’t confidence

  7. Confidence is belief in someone’s competence

  8. Trust is belief in their honesty, fairness and benevolence

  9. Trust isn’t reliance

  10. You rely on objects and technology, but you don’t trust

    them
  11. None
  12. None
  13. What’s the point of trusting anything? • Trust provides 3

    basic things in society* • Makes life predictable • Creates a sense of community • Makes it easier for people to work together *Barbara Misztal, Trust in Modern Societies: The Search for the Bases of Social Order, Polity Press,
  14. What’s the point of trusting anything? • Trust allows us

    to deal with uncertainty and risk • Trust deals with the tension between: • Confidence in what we know from everyday experience • Uncertainty of new possibilities
  15. What’s the point of trusting anything? • Trust is about

    the prediction of future behaviour • Of people • Of systems • Consistently making commitments and meeting them
  16. Trust between Dev and Ops

  17. Trust between DevOps and Management

  18. Trust is a two-way street

  19. The MonkeySphere

  20. Scaling trust with technology, tools and process

  21. Measure it

  22. Idempotency

  23. Immutability

  24. CI/CD

  25. Contracts

  26. Contracts

  27. http://youdevise.github.io/orc/ contract.html

  28. How do we build trust?

  29. None
  30. Trust is something we extend to others

  31. Trust that you will fail

  32. None
  33. Recipes for wincake

  34. Start small • Early adopters • Proof of concept •

    Deliver first, then evangelise
  35. Remove surprises • Development should be on production- like environments

    • Testing should be with data as close to real as possible
  36. Fail early, fail often

  37. Retrospectives • Frequent • Not just for failures • Invite

    other teams!
  38. Flow •Eliminate bottlenecks due to trust •Don’t do things twice

  39. Consistency • Define expectations • Monitor and measure performance against

    expectations • Make changes repeatable
  40. Communication

  41. Honesty and Respect • Tell the truth • Don’t sugar

    coat • Respect others’ opinions • Respect others’ skills
  42. Visibility • IRC/other chat systems • Wikis • Avoid “hidden

    knowledge”
  43. Transparency

  44. Trust me, it’s over • Trust is about people and

    relationships • Trust needs scaling with tools, technology and process • Trust is fundamentally about how you manage risk to derive value • Does anyone trust me enough to lend me €50?
  45. Thanks • Yelp Engineering Blog http://engineeringblog.yelp.com/ • Failcake recipes https://github.com/failcake/recipes

    • Contact me sam@fqdn.net, @thesamoth • We’re hiring! http://www.yelp.com/careers