44
5 Keys to Building a Successful DevOps Culture Mandi Walls Technical Practice Manager, Chef DevOps Drive-In, May 22, 2014

5 Keys to Building a Successful DevOps Culture

Embed Size (px)

DESCRIPTION

5 Keys to Building a Successful DevOps Culture: Serena Software DevOps DriveIn, May 2014

Citation preview

Page 1: 5 Keys to Building a Successful DevOps Culture

5 Keys to Building a Successful DevOps Culture

Mandi Walls

Technical Practice Manager, Chef

DevOps Drive-In, May 22, 2014

Page 2: 5 Keys to Building a Successful DevOps Culture

whoami

• Mandi Walls• Technical Practice Manager @ Chef• @lnxchk• Author of “Building A DevOps Culture”

• http://www.oreilly.com/velocity/free/building-devops-culture.csp

Page 3: 5 Keys to Building a Successful DevOps Culture

DevOps at 50,000 Feet

It is: a cultural and professional movement

It isn’t: a job description, new team, or solitary

organization

Page 4: 5 Keys to Building a Successful DevOps Culture

Why DevOps

• New practices that emerged from the maturation of web operations• A deeper reliance on technology in more industries• Desire from customers and stakeholders

A drive toward more interaction,

responsiveness, interconnectedness

Page 5: 5 Keys to Building a Successful DevOps Culture

Components of DevOps

• CAMS• As described by John Willis in What DevOps Means To Me, 7/16/10

• Culture• Automation• Measurement• Sharing

http://www.getchef.com/blog/2010/07/16/what-devops-means-to-me/

Page 6: 5 Keys to Building a Successful DevOps Culture

Culture

• Shared values and behaviors• There’s no right culture for DevOps, but there are characteristics:

• Supportive• Open to experimentation• Flexible• Collaborative• Trusting

• If your organization isn’t these things, you have to build them

Page 7: 5 Keys to Building a Successful DevOps Culture

Building or Changing Culture

• This is hard.• No, like, seriously hard.• Focus on behaviors and values• Tools influence behavior• How you use them, what you use them for, influences values

Page 8: 5 Keys to Building a Successful DevOps Culture

Transforming Your Organization to DevOps

• Technologists love tools!• No one can sell you a “DevOps Solution”, the “C” part is hard work!• Our 5 Keys:

• Setting Goals• Gaining Executive Support• Building Pilot Projects• Training and Prioritization• Outreach And Evangelism

Page 9: 5 Keys to Building a Successful DevOps Culture

Key 1: Setting Goals

Page 10: 5 Keys to Building a Successful DevOps Culture

Why Are You DevOpping?

• Focus on measurable improvements• “We want to reduce our new-release install time from 16 hours to 90

minutes.”• “We want to reduce our new feature time-to-market from 6 months to

5 days.”• Challenging!

• Do you have the initial metrics? • Or do things just feel wrong?

Page 11: 5 Keys to Building a Successful DevOps Culture

Good Goals

• Your goals should matter to lots of people in your organization• “DevOps” is really just short for “DevProductSupportNetSecBizOps”

Page 12: 5 Keys to Building a Successful DevOps Culture

Goals in Numerous Places

• The goals you choose to focus on shouldn’t be in opposition to any team’s individual goal• That’s not a way to get support when you need it!

• If you don’t know what matters, talk to people!• Broaden your scope of stakeholders• Look for complimentary goals

Lower TTM + More testing + Fewer Bugs in Prod=

Introducing Some Automation

Page 13: 5 Keys to Building a Successful DevOps Culture

Key 2: Gaining Executive Support

Page 14: 5 Keys to Building a Successful DevOps Culture

Air Cover

• The right goals will get buy in• Your DevOps transformation will need some people, some budget,

some time• You may have to move people around, or change their workloads

Page 15: 5 Keys to Building a Successful DevOps Culture

Skunkworks

• It’s tempting to just go for it and hope for the best• In some organizations this definitely works!• In others, you’ll want someone to help cut through red tape and make

resources available

Page 16: 5 Keys to Building a Successful DevOps Culture

Silos

• Exist for reasons• If your silos are skills based,

they can become porous• Network• Security• Storage

• Have to be addressed in a constructive manner

https://www.flickr.com/photos/97367204@N06/11391488416

Page 17: 5 Keys to Building a Successful DevOps Culture

Non-Executive Influencers

• Prominent team members that people look up to• Look for informal lines of influence• “Let’s see what Bob thinks of that” or “We should ask Jane”

Look for the People Everyone Wants on Their Team

Page 18: 5 Keys to Building a Successful DevOps Culture

The Role of Management in a DevOps Transition

• Workload prioritization• Influence on external teams

• “Who do I have to talk to to make this happen?”

• Managing personnel issues• Orgs in transition may end up moving people to new teams, changing

someone’s role drastically, letting people go, or other scary things

• You want someone respected in your organization to back your project

Page 19: 5 Keys to Building a Successful DevOps Culture

Key 3: Building Pilot Projects

Page 20: 5 Keys to Building a Successful DevOps Culture

http://cdn.memegenerator.net/instances/250x250/49589360.jpg

Page 21: 5 Keys to Building a Successful DevOps Culture

Why a Pilot?

• CAMS• Creating a Culture• Building Automation• Measuring all the Things• Sharing What Happens

• If these aren’t natural to your team, you need a place to practice

Page 22: 5 Keys to Building a Successful DevOps Culture

Picking A Pilot

• Management support• Start small, but deep

• Flush out all the gnarly bumps in the road

• Representative of real work

Page 23: 5 Keys to Building a Successful DevOps Culture

What Makes a Good Pilot

• Working with modern platforms• Programming language, OS version• Also interfaces – loosely coupled upstream and downstream

• Brand new, greenfield is good!• Established projects with a new release are too!• Teams are open to experimentation

Page 24: 5 Keys to Building a Successful DevOps Culture

Development Team

• Might be changing their work a bit• Giving them new tools• Expecting different results• Are they engaged in the M?!?• Participating in oncall, outage response, deployment

Page 25: 5 Keys to Building a Successful DevOps Culture

Product

• New DevOps activities might take time away from writing code• Establishing priority across multiple goals

Page 26: 5 Keys to Building a Successful DevOps Culture

Operations

• The most common target team for “DevOps”• Easy to overburden, need explicit prioritization• DevOps will be more than “Operations with more coding”• Work often focuses on the A and M parts of CAMS

Page 27: 5 Keys to Building a Successful DevOps Culture

QA, Release Engineering

• Moving towards increasing automation• Requirement of advanced skills

Page 28: 5 Keys to Building a Successful DevOps Culture

Customer Support

• The place to find out what customers care about• Find things like “Customers want more features and fixes faster” vs

“Customers demand 100% uptime”

Page 29: 5 Keys to Building a Successful DevOps Culture

Key 4: Training and Prioritization

Page 30: 5 Keys to Building a Successful DevOps Culture

Training

• Train everyone• On new tools, on new workflows• Training is part of sharing – everyone gets a chance to have

experience

Page 31: 5 Keys to Building a Successful DevOps Culture

Moving Workloads

• The folks who have to learn new things have to have time to do it• Some of their current work will have to be deprioritized or moved• Everyone on the team should get a chance to do new stuff – don’t

leave someone behind to maintain the old stuff alone

Page 32: 5 Keys to Building a Successful DevOps Culture

Setting Expectations

• Don’t kill anyone for DevOps• It takes time to learn new tools, no matter how excited the team is

about it• Your entire project will take time as well

Page 33: 5 Keys to Building a Successful DevOps Culture

Helping the Lost or Disgruntled

• Any change has effects on the organizations involved• It’s likely that adoption and enthusiasm will not be universal• Up to management to incentivize, reward• Make the hard decisions about an individual’s future with the group

Page 34: 5 Keys to Building a Successful DevOps Culture

Hiring for DevOps?

• No.• Expecting brand-new individual contributors to change your culture is

a losing proposition• Organizational change can be germinated from new leadership

• Still requires influence, credibility, the right person

Page 35: 5 Keys to Building a Successful DevOps Culture

Key 5: Outreach and Evangelism

Page 36: 5 Keys to Building a Successful DevOps Culture

Showing Off

• Talk about your project• Internally• Externally• All the time

• Use different venues• Brown bags sessions, formal workshops, larger talks, All-Hands• Documents, video, graphs!

Page 37: 5 Keys to Building a Successful DevOps Culture

Tiger Team

• Help other teams navigate• Have a multitude of skills• Establish practice for workflows, feedback, improvements• Potentially act as helpdesk on new tools and processes

Page 38: 5 Keys to Building a Successful DevOps Culture

Bonus: 3 Helpful Tips

Page 39: 5 Keys to Building a Successful DevOps Culture

Having Patience

• It will take time• Some will be experimental• You won’t do it perfectly the first time

Page 40: 5 Keys to Building a Successful DevOps Culture

Engage with Management

• Use the right PKIs• Manage to people and to tools

Page 41: 5 Keys to Building a Successful DevOps Culture

Over Communicate

If you feel like you’re talking about it too much, you’re probably just about right

Page 42: 5 Keys to Building a Successful DevOps Culture

Thank You@lnxchk

Page 43: 5 Keys to Building a Successful DevOps Culture

Check out Chef!

• Configuration management• Linux, Windows, AIX, other Unixes• Learn More:

• https://learnchef.opscode.com/• https://getchef.com

• Follow us on Twitter: @chef

Page 44: 5 Keys to Building a Successful DevOps Culture