Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Implementing DevOps

3,608 views

Published on

A presentation I gave to the USPTO's CIO office on my experiences implementing DevOps.

Published in: Government & Nonprofit
  • Hey guys! Who wants to chat with me? More photos with me here 👉 http://www.bit.ly/katekoxx
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here

Implementing DevOps

  1. 1. Implementing DevOps Mike McGarr jmcgarr@gmail.com @SonOfGarr http://www.MikeMcGarr.com
  2. 2. About Me • J. Michael (Mike) McGarr • 13 years as a software engineer • Engineering Tools Team at Netflix • DC Continuous Delivery Meetup Founder • Director of EngOps, Blackboard Inc. • Excella Consulting • Booz Allen Hamilton 6/26/14 @SonOfGarr 2
  3. 3. Agenda • Why you need DevOps? • Understanding DevOps • DevOps Culture • DevOps Prescriptions • Questions 6/26/14 @SonOfGarr 3
  4. 4. WHY YOU NEED DEVOPS? 6/26/14 @SonOfGarr 4
  5. 5. Manual Releases 6/26/14 @SonOfGarr 5
  6. 6. Large, Infrequent Releases 6/26/14 @SonOfGarr 6
  7. 7. Large Product Backlogs 6/26/14 @SonOfGarr 7
  8. 8. http://www.streetrodderweb.com/events/0704sr_5th_jalopy_jamboree/photo_15.html Low Quality Software 6/26/14 @SonOfGarr 8
  9. 9. High Technical Debt 6/26/14 @SonOfGarr 9
  10. 10. Burnout & Fatigue 6/26/14 @SonOfGarr 10 Image: http://amydrewthompson.com/business/beating-burnout/
  11. 11. Agile,…right? 6/26/14 @SonOfGarr 11
  12. 12. How long does it take… …to deploy a single line of code change to prod? • Months? • Weeks? • Days? • Hours? • Minutes? How long does it take to stand up a new service? 6/26/14 @SonOfGarr 12
  13. 13. The Last Mile… AGILE FOCUSES HERE 6/26/14 @SonOfGarr 13
  14. 14. Dev vs Ops http://dev2ops.org/2010/02/what-is-devops/ 6/26/14 @SonOfGarr 14
  15. 15. DevOps http://dev2ops.org/2012/09/use-devops-to-turn-it-into-a-strategic-weapon/ 6/26/14 @SonOfGarr 15
  16. 16. More than just Dev and Ops… 6/26/14 @SonOfGarr 16
  17. 17. UNDERSTANDING DEVOPS 6/26/14 @SonOfGarr 17
  18. 18. Velocity Conference (2009) 6/26/14 @SonOfGarr 18
  19. 19. The Phoenix Project (2013) 6/26/14 @SonOfGarr 19
  20. 20. Principles Underpinning DevOps “We assert that the Three Ways describe the values and philosophies that frame the processes, procedures, practices of DevOps, as well as the prescriptive steps.” - Gene Kim 6/26/14 @SonOfGarr 20
  21. 21. 6/26/14 @SonOfGarr 21
  22. 22. The First Way • How many steps are involved in deploying a new feature? How long does it take? – Do you know? Does anybody? 6/26/14 @SonOfGarr 22
  23. 23. Blackboard Code changes took 4 days or more to Test!!! 6/26/14 @SonOfGarr 23
  24. 24. 6/26/14 @SonOfGarr 24
  25. 25. The Second Way • Did your code change break something else? • How does your code perform in production? • Who has access to production graphs? Do they exist? 6/26/14 @SonOfGarr 25
  26. 26. Office of Personnel Management 6/26/14 @SonOfGarr 26
  27. 27. Nightly Performance Tests 6/26/14 @SonOfGarr 27
  28. 28. 6/26/14 @SonOfGarr 28
  29. 29. The Third Way • How many experiments/risks does your org run? • How does your org learn from its mistakes? 6/26/14 @SonOfGarr 29
  30. 30. Blackboard  Retrospectives Hackdays  6/26/14 @SonOfGarr 30
  31. 31. DevOps is Culture • DevOps is not… …a team …a role …a tool • DevOps is… …all about trust …everybody’s responsibility …about collaboration 6/26/14 @SonOfGarr 31
  32. 32. DEVOPS CULTURE 6/26/14 @SonOfGarr 32
  33. 33. http://www.slideshare.net/reed2001/culture-1798664 6/26/14 @SonOfGarr 33
  34. 34. http://www.slideshare.net/reed2001/culture-1798664 6/26/14 @SonOfGarr 34
  35. 35. Pager Duty “We found that when we woke up developers at 2am, defects got fixed faster than ever.” - Patrick Lightbody, CEO BrowserMob Not Patrick Lightbody  6/26/14 @SonOfGarr 35
  36. 36. People, Process, then Tools Hire the Best! 6/26/14 @SonOfGarr 36
  37. 37. Embrace Change http://blog.devopsguys.com/2013/07/17/devops-antifragility-and- the-borg-collective/ 6/26/14 @SonOfGarr 39
  38. 38. Netflix Chaos Monkey 6/26/14 @SonOfGarr 40
  39. 39. Collaborate daily Ops Test DEV 6/26/14 @SonOfGarr 41
  40. 40. Create a sharing culture 6/26/14 @SonOfGarr 42
  41. 41. Blameless Post-mortems “Having a “blameless” Post-Mortem process means that engineers whose actions have contributed to an accident can give a detailed account of: • what actions they took at what time, • what effects they observed, • expectations they had, • assumptions they had made, • and their understanding of timeline of events as they occurred. …and that they can give this detailed account without fear of punishment or retribution.” - John Allspaw, Etsy 6/26/14 @SonOfGarr 43
  42. 42. 6/26/14 @SonOfGarr 44
  43. 43. DEVOPS PRESCRIPTIONS 6/26/14 @SonOfGarr 46
  44. 44. Version everything! • Server configuration • Database scripts • Deployment scripts • Code • JBoss configuration • Documentation Avoid Golden Hammers 6/26/14 @SonOfGarr 47
  45. 45. Continuous Integration 6/26/14 @SonOfGarr 48
  46. 46. Monitor everything! https://github.com/monitoringsucks 6/26/14 @SonOfGarr 49
  47. 47. Create information radiators 6/26/14 @SonOfGarr 50
  48. 48. Index & expose log files 6/26/14 @SonOfGarr 51
  49. 49. Automate Tests Testers and Developers write tests! 6/26/14 @SonOfGarr 52
  50. 50. Automate your databases Version Control DB Change DB Change DB Change Build Server Production Test Dev HTML .sql DBA 6/26/14 @SonOfGarr 54
  51. 51. Virtualize your infrastructure 6/26/14 @SonOfGarr 55
  52. 52. Infrastructure as Code 6/26/14 @SonOfGarr 56
  53. 53. Create deployment pipelines Automate from Source to Production! 6/26/14 @SonOfGarr 57
  54. 54. Embrace the JVM 6/26/14 @SonOfGarr 58
  55. 55. Build microservices 6/26/14 @SonOfGarr 59
  56. 56. Architects code! 6/26/14 @SonOfGarr 60
  57. 57. DevOps = Job Happiness 6/26/14 @SonOfGarr 61
  58. 58. Thank you! • Mike McGarr • jmcgarr@gmail.com • @jMichaelMcGarr • http://www.mikemcgarr.com 6/26/14 @SonOfGarr 62

×