Introduction To DevOps
Introduction To DevOps
Concept Challenges
Solutions Opportunities
2
Introduction
“Devs are from Venus
What and Why? Ops are from Mars”
Steven Haines
3
DevOps
Forrester
Elaborating DevOps
5
www.agile.org.pk | [email protected] | #AgilePK
Background
Pre 2000’s 2000’s 2010’s
Waterfall Development Iterative Agile Development Lean with DevOps
Cycle time: Months or Years Cycle time: Weeks or Months Cycle time: Hours or Days
Idea Idea Idea
7
What effective Automation looks like
8
9
Automated Software Delivery Pipeline
10
Problem Space
bilities
wareness
pproach
11
Solution Space
bilities
wareness
pproach
12
Problem 2
Aligning Various Perspectives “Any organization that
designs a system will
inevitably produce a
design whose structure
is a copy of the
organization’s
communication
structure” 13
Values &
Principles
Values &
Principles
DevOps Perspectives
14
Problem Space
rganization
rientation
wnership
15
Solution Space
rganization
rientation
wnership
16
Problem 3
Environments Management “Move fast with stable
infrastructure”
Mark Zuckerburg
17
Values &
Principles
Values &
Principles
Environments Management
18
Problem Space
nfrastructure
ntegration
solation
19
Solution Space
nfrastructure
ntegration
solation
20
Problem Checklist
Environments Management
21
www.agile.org.pk | [email protected] | #AgilePK
Opportunities
Faster and Reliable Development “You build it, you run it”
and Delivery Werner Vogels
22
Reasons
23
www.agile.org.pk | [email protected] | #AgilePK
Life Cycle Phases in DevOps
24
Popular DevOps tools
25
DevOps
More collaboration and automation between the development and
operations teams = larger pipeline
DevOps
31
IBM Success story
32
33
33
Career path
Demand and skills
Shahar Gotshtat
Why to adopt devops as a career?
IT’S
IT’S A FUTURE
CHALLENGING
35
IT’S EXCITING IT’S DIVERSE
DevOps as a Career
156,209 $104,158
DevOps Engineers Average salary for a
jobs currently DevOps Engineer in
available US
#2 DevOps 60%
DevOps Engineers Market Hiring Managers are
ranking in 50 best jobs looking to fill DevOps
in Glassdoor survey Engineers position
36
57% 42%
Open source jobs
Open source
study want to add
expertise are focused
DevOps skills across
on DevOps skills
their hiring portfolio
Job responsibilities of a DevOps engineer
Knowledge & Skills You Need As A DevOps Engineer
Questions?
What is Lean Software Development (LSD)?
Lean Software Development (LSD) is an agile framework based on
optimizing development time and resources, eliminating waste, and
ultimately delivering only what the product needs. The Lean approach
is also often referred to as the Minimum Viable Product (MVP) strategy,
in which a team releases a bare-minimum version of its product to the
market, learns from users what they like, don’t like and want to be
added, and then iterates based on this feedback.
In order to achieve these aims in DevOps, the idea is to break down historic silos and improve
collaboration between development and operations teams to streamline and improve work in some
key ways. It used to be that separate teams wrote the code, tested the code, deployed the code, and
then maintain the code during a product's lifecycle. The idea behind DevOps is to break down all those
barriers and get everyone collaborating from the get-go on the same team. Ultimately, DevOps is about
people, which is really what Lean management approaches are about as well. It's about creating a
culture of focusing on delivering value for the customer
Back in 2010, two major DevOps thought leaders, Damon Edwards and John Willis, coined the acronym
CAMS, C-A-M-S, which stood for Culture, Automation, Measurement, and Sharing. Later, Jez Humble,
another thought leader in the DevOps community, who's authored a number of books, decided to add
Lean to the mix, creating the acronym CALMS.
Director of Ecosystem Development, Docker
Some of the key components of that definition or that it's not just about technology,
it's not just about process, and it's not just about people, it's really the combination of all three that
make DevOps come to life. It's about a full life cycle of delivering value, building, deploying, operating,
and supporting.
the industry has also acknowledged the need to incorporate security teams into that
definition. Sometimes even seeing the phrase DevSecOps.
Traditionally, a lot of organizations have
a development team,
test team, release team,
and operations team, security team,
and business teams, and what DevOps
aims to do is to break down those silos
and make the entire team accountable
for all of those things instead of just
handing them off.
DevOps Principles: The Three Ways
The first way, systems thinking really emphasizes the performance of the entire system as
opposed to the performance of a specific silo work group or team. This is a really important
elements of DevOps.
DevOps is about collaboration across functional lines, really breaking down those silos and
focusing on the value streams that IT enables.
The outcomes of the second way include understanding and responding to all
customers, internal and external, shortening and amplifying all feedback loops,
and embedding knowledge where we need it.
Ways to improve feedback loops
One way is to build automated tests into the pipeline so developers can get
feedback early and often.
Quality Dashboard
It showed the health of our automated test scripts that ran every night, and if a
certain threshold was met, in our case, the percentage of tests that failed, than the
dashboard would turn red. We would halt the release until we were back within our
acceptable quality range. This is an example of a feedback loop. Our teams could
easily see early and often if we had quality issues, and could deliver that feedback to
the developers.
The outcomes of the third way are
about making sure that you're
allocating time for that
improvement work.
Deming quote.
"Quality is everyone's responsibility".
• This principle is about making sure that you have quality built into the
product and into the process.
DevOps Principles: The Seven Principles and
Seven Wastes of Lean
3. The third principle is creating knowledge,
Deming quote.
"Quality is everyone's responsibility".
• This principle is about making sure that you have quality built into the
product and into the process.
DevOps Principles: The Seven Principles and
Seven Wastes of Lean
4. The fourth principle, is differing commitment
• Make Decisions at the right time
• After analysis and considerations
• Delay decisions until you have more info
People are at the center of DevOps and Lean. If you aren't practicing
that then it typically falls apart. I believe passionately that people are
an organization's number one asset. Often though, organizations don't
behave that way. When I first started getting exposure to DevOps and
Lean, I realized that fundamentally it's about respect for people.
DevOps Principles: The Seven Principles and
Seven Wastes of Lean
7. Optimize The Whole
Step 2: Current Condition and Problem Statement Plan Phase: Step 1-4
Current reality = where things stand today spend time on the plan phase!
Great planning leads to successful
Step 3: Develop the Goal outcomes
Countermeasures
Then based on the results, step seven is when you're going to update what's
called standard work, based on the outcome of the steps that you took.
For example, if you automate it those test scripts, and it reduced your production
incident count,
then you will want to check those into a library, and have those become your
standard automated scripts going forward.
A3 Problem Solving Framework
1. Systems Thinking
2. Amplify Feedback Loops
3. Creating a culture of experimentation and continuous learning
Revision
As the manager of the QA team, you continue to receive escalations from
development teams saying that they are unable to move fast because they are
always waiting on your team to finish running tests. What type of waste is
happening in this situation?
1. Defects
2. Handoffs
3. Delays
4. Relearning or revisiting decisions
5. Extra features
6. Partially done work
7. Task switching
Revision
A team in your organization says they are using the A3 framework to solve a
problem with a high number of defects happening after releases. They aren’t
having a lot of success and when you look at the A3, they haven’t populated
the first four sections of the framework. What suggestion would you make to
them? (Select the 1 best answer.)
1. To spend the time to make sure they clearly understand the problem.
The first 4 sections are part of the Plan phase and are the most critical to
spend the most time on and to complete.
2. That it’s o.k. as long as they have the Do, Check and Act sections
populated.
3. Breeze through the plan phase to more quickly arrive at the critical "do"
phase.