why everyone needs devops now: my fourteen …high performing devops teams they’re more agile 30x...

76
Session ID: @RealGeneKim, [email protected] Why Everyone Needs DevOps Now: My Fourteen Year Journey Studying High Performing IT Organizations Gene Kim

Upload: others

Post on 16-Aug-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

Session ID:

@RealGeneKim, [email protected]

Why Everyone Needs DevOps Now:

My Fourteen Year Journey Studying High Performing IT OrganizationsGene Kim

Page 2: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

Where Did The High Performers Come From?

Page 3: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

Visible Ops: Playbook of High Performers

The IT Process Institute has been studying high-performing organizations since 1999

What is common to all the high performers?

What is different between them and average and low performers?

How did they become great?

www.ITPI.org

Page 4: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

Act I: IT Ops Fixing Fragile Artifacts

Page 5: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

Page 6: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

The Product Managers

Page 7: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

Act 2: The Developers

Page 8: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

Page 9: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

Page 10: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

IT Ops And Dev At War

10

Page 11: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

Nothing Left For Infosec

Page 12: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

Page 13: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

13

The DownwardSpiral…

Page 14: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim16

The IT Core Chronic Conflict

Every IT organization is pressured to simultaneously:

Respond more quickly to urgent business needs Provide stable, secure and predictable IT service

Source: The authors acknowledge Dr. Eliyahu Goldratt, creator of the Theory of Constraints and author of The Goal, has written extensively on the theory and practice of identifying and resolving core, chronic conflicts.

Page 15: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

Every Company Is An IT Company…

95% of all capital projects have an IT component…

50% of all capital spending is technology-related

We are here…

Where we need to be…

IT is always in the way(again…)

Page 16: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

Act 3:There Must Be A Better Way…

21

Page 17: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKimSource: John Allspaw

Page 18: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

Page 19: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKimSource: John Allspaw

Page 20: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

Page 21: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKimSource: John Allspaw

Page 22: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKimSource: John Allspaw

Page 23: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKimSource: Theo Schlossnagle

Page 24: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKimSource: Theo Schlossnagle

Page 25: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKimSource: Theo Schlossnagle

Page 26: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKimSource: John Jenkins, Amazon.com

Page 27: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

Who Is Doing DevOps?

Google, Amazon, Netflix, Etsy, Twitter, Facebook, Pinterest …

BNY Mellon, Bank of America, World Bank, Paychex, Intuit…

The Gap, Nordstrom, REI, Macy’s, GameStop, Target …

Portland State University, Seton Hill University, Kansas State University…

Who else?

33

Page 28: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

High Performing DevOps Teams

They’re more agile

30x more frequent deployments 8,000x faster lead time than their peers

They’re more reliable

2x the change success rate 12x faster MTTR

Source: Puppet Labs 2012 State Of DevOps: http://puppetlabs.com/2013-state-of-devops-infographic

Page 29: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

35

Page 30: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

Page 31: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

46

“This book will have a profound effect on IT, just as The Goal did for manufacturing.” --Jez Humble, co-author Continuous Delivery

“This is the IT swamp draining manual for anyone who is neck deep in alligators.” --Adrian Cockroft, Cloud Architect at Netflix

“This is The Goal for our decade, and is for any IT professional who wants their life back.” --Charles Betz, IT architect, author “Architecture and Patterns for IT”

Page 32: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

The First Way: Flow

Page 33: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

The First Way: Flow

Understand the flow of work

Always seek to increase flow

Never unconsciously pass defects downstream

Never allow local optimization to cause global degradation

Achieve profound understanding of the system

Page 34: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

Questions

What is your lead time for changes? (i.e., how long does it take to go from “code committed” to “code successfully running in production”)

How much of that is queue time vs. run time?

51

Page 35: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

Day 2: PMO Meeting

Page 36: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

Day 2: PMO Meeting

Page 37: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

Create One Step Environment Creation Process

Make environments available early in the Development process

Make sure Dev builds the code and environment at the same time

Create a common Dev, QA and Production environment creation process

Page 38: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

If I had a magic wand, I’d change the Agile sprints and definition of “done”:

“At the end of each sprint, we must have working and shippable code, demonstrated in an environment that resembles production.”

Page 39: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

Deploy Smaller Changes, More Frequently *

Decouple feature releases from code deployments

Deploy features in a disabled state, using feature flags

Require all developers check code into trunk daily (at least)

Practice deploying smaller changes, which dramatically reduces risk and improves MTTR

56

Page 40: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

Breaking The Bottlenecks In The Flow

Environment creation

Code deployment

Test setup and run

Overly tight architecture

Development

Product management

57

Page 41: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

58

How organizations achieve high performance

• 89% are using infrastructure version control• 82% are using automated code deployments

Source: Puppet Labs 2012 State Of DevOps: http://puppetlabs.com/2013-state-of-devops-infographic

Page 42: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

Blackboard Learn: 2005-Present

62

Source: David Ashman, Chief Architect, Blackboard, Inc.

Page 43: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

Blackboard Learn Building Blocks

63Source: David Ashman, Chief Architect, Blackboard, Inc.

Page 44: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

The First Way:Outcomes

Creating single repository for code and environments

Determinism in the release process

Consistent Dev, Test and Production environments, all properly built before deployment begins

A continuous delivery pipeline that can be relied upon and daily Dev code commits

Free ourselves from the learned behavior of catastrophic deployments

Decreased lead time

Reduce deployment times from 6 hours to 45 minutes Refactor deployment process that had 1300+ steps spanning 4 weeks

Faster cycle time and release cadence

Page 45: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

The Second Way: Feedback

Page 46: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

The Second Way: Feedback

Understand and respond to the needs of all customers, internal and external

Shorten and amplify all feedback loops: stop the line when necessary

Create quality at the source

Create and embed knowledge where we need it

Page 47: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

“We found that when we woke up developers at 2am, defects got fixed faster than ever”

-Patrick Lightbody, CEO, BrowserMob

Page 48: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

Require That Devs Manage Their Own Code For 6+ Months

69

Source: Tom Limoncelli, Google

Page 49: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

Test Whether Developers Qualify For IT Operations Resources

Types/frequency of pager alerts

Maturity of monitoring

System architecture review

Release process

Defect counts and severity

Production hygiene

70

Source: Tom Limoncelli, Google

Page 50: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

Return Fragile Services Back To Dev

71

Source: Tom Limoncelli, Google

Page 51: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

Feedback And Situational Awareness

“Having a developer add a monitoring metric shouldn’t feel like a schema change.”

-- John Allspaw, SVP Tech Ops, Etsy

72

Page 52: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

73

Page 53: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

74

Page 54: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

Integrating Into Continuous Delivery

The days of reviewing RFCs in Word docs in change management meetings are over

Failures must result in automated tests in the continuous deployment pipeline (Release, Config, Change)

Invite or embed Ops into Dev standups and the scrum teams (“hey, we can sprint and scrums, too!”)

Page 55: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

The Second Way:Outcomes

Defects and security issues getting fixed faster than ever

Standardized and reusable Ops and Infosec user stories now part of the Agile process

All groups communicating and coordinating better

Everybody is getting more work done

Page 56: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

The Third Way:Continual Experimentation And Learning

Page 57: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

The Third Way:Continual Experimentation And Learning

Foster a culture that rewards: Experimentation (taking risks) and learning from

failure Repetition is the prerequisite to mastery

Why? You need a culture that keeps pushing into the danger

zone And have the habits that enable you to survive in the

danger zone

Page 58: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

Break Things Early And Often

“Do painful things more frequently, so you can make it less painful… We don’t get pushback from Dev, because they know it makes rollouts smoother.”

-- Adrian Cockcroft, Architect, Netflix

Page 59: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

82

Page 60: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

Inject Failures Often

Page 61: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

You Don’t Choose Chaos Monkey…Chaos Monkey Chooses You

Page 62: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

Break Things Before Production

Enforce consistency in code, environments and configurations across the environments

Add your ASSERTs to find misconfigurations, enforce https, etc.

Add static code analysis to automated continuous integration and testing process

Page 63: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

Reduce Technical Debt

“The deal with engineering goes like this. Product management takes 20% of the capacity right off the top and gives this to engineering to spend as they see fit. Whatever is required to avoid, ‘we need to stop features to rewrite code.

“If you’re in really bad shape today, you might need to make this 30% or even more of the resources. I get nervous when I find teams that think they can get away with much less than 20%.”

-- Marty Cagan, Inspired

Page 64: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

Allocate 20% Of Cycles To Technical Debt Reduction

Page 65: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

Recognize Compounding Technical Debt…

Page 66: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

That Gets Worse…

Page 67: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

And Fixing It…

Source: Pingdom

Page 68: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

An Innovation Culture

“By installing a rampant innovation culture, they now do 165 experiments in the three months of tax season.

Our business result? Conversion rate of the website is up 50 percent. Employee result? Everyone loves it, because now their ideas can make it to market.”

--Scott Cook, Intuit Founder

91

Page 69: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

93

Performance by DevOps maturity

Organizations that implemented DevOps practices over 12

months ago were 5x more likely to be high performing than

organizations that weren’t implementing DevOps at all.

Source: Puppet Labs 2012 State Of DevOps: http://puppetlabs.com/2013-state-of-devops-infographic

Page 70: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

Why Do I Think This IsImportant?

94

Page 71: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

95

The DownwardSpiral…

Page 72: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

Page 73: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

97

Page 74: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

If I Could Wave A Magic Wand, Everyone Will…

See the suffering downstream, and have confidence that your intuitions and skills can make a profound and positive difference…

Become conversant with DevOps and recognize the practices when you see them

Be energized about how practitioners can contribute in this organizational journey

Leave with some concrete steps to get some great outcomes

Help create a team that starts putting DevOps practices into place

98

Page 75: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

100

“Some books you give to friends, for the joy of sharing a great novel.

“Some books you recommend to your colleagues and employees, to create common ground.

“Some books you share with your boss, to plant the seeds of a big idea.

“The Phoenix Project is all three.”

--Jeremiah Shirk, Integration & Infrastructure Manager at Kansas State University

Page 76: Why Everyone Needs DevOps Now: My Fourteen …High Performing DevOps Teams They’re more agile 30x more frequent deployments 8,000x faster lead time than their peers They’re more

@RealGeneKim

Our Mission: Positively Impact The Lives Of One Million IT Workers By 2017

Free 170 page excerpt:http://itrevolution.com/the-phoenix-project-excerpt/

http://slideshare.net/realgenekim

DevOps Defensive Audit Toolkit

Enterprise DevOps Case Studies

Early draft of upcoming “DevOps Cookbook” (Allspaw, DeBois, Edwards, Humble, Kim, Orzen)

Email me at [email protected]