DevoxxFR 2024 Reproducible Builds with Apache Maven
5 Keys to Building a Successful DevOps Culture
1. 5 Keys to Building a Successful
DevOps Culture
Mandi Walls
Technical Practice Manager, Chef
DevOps Drive-In, May 22, 2014
2. whoami
• Mandi Walls
• Technical Practice Manager @ Chef
• @lnxchk
• Author of “Building A DevOps Culture”
• http://www.oreilly.com/velocity/free/building-devops-culture.csp
3. DevOps at 50,000 Feet
It is:
a cultural and professional movement
It isn’t:
a job description, new team, or solitary
organization
4. 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
5. 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/
6. 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
7. 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
8. 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
10. 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?
11. Good Goals
• Your goals should matter to lots of people in your organization
• “DevOps” is really just short for “DevProductSupportNetSecBizOps”
12. 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
14. 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
15. 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
16. 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
17. 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
18. 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
21. 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
22. Picking A Pilot
• Management support
• Start small, but deep
• Flush out all the gnarly bumps in the road
• Representative of real work
23. 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
24. 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
25. Product
• New DevOps activities might take time away from writing code
• Establishing priority across multiple goals
26. 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
28. 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”
30. Training
• Train everyone
• On new tools, on new workflows
• Training is part of sharing – everyone gets a chance to have
experience
31. 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
32. 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
33. 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
34. 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
36. 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!
37. 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
43. Check out Chef!
• Configuration management
• Linux, Windows, AIX, other Unixes
• Learn More:
• https://learnchef.opscode.com/
• https://getchef.com
• Follow us on Twitter: @chef
Notas del editor
Misalignment of incentives – dev measured on lines of code, making change. ops is keeping things stable and the same.
The non-executive influencer likely has the respect of your colleagues, even if they don’t have an official leadership role. When new projects are being discussed, these are the folks everyone wants to bring on board. Their support of a project, especially a disruptive one, can be incredibly valuable.
Imagine going into a new job as an individual contributor at a large organization. Your first 3-6 months are just learning how to navigate the different teams, figure out how to get work done, learn who to ask for help for advice. Walking in and being expected to completely rewrite the way the team does work is an almost impossible task.
You can hire people with specific skillsets, and bring the in to be SMEs on those skills. Your management will need to provide clear guidance on roles and expectations. Bringing new people into your org can cause interpersonal issues, jealousy, other issues.