WHAT IS DEVOPS?
• It is a practice
• It is a mentality and culture
• It is collaboration
• It is agile operations
• It is software approach to ops
• It is rapid IT service delivery
• It is not a permanent team
• It is not a profession
• It is not only software tools
• It is not only code infrastructure
• It is not a System Engineer
features released faster, reduced cycle times,
higher deploy rates, contained issues, ability to
Faster time to market
increased availability, increased change success
rate, embrace failures.
increased time spent on value adding activities,
increased amount of value being delivered to the
customer, better collaboration among teams
QUALITY ASSURANCE IT OPERATIONS
Required to produce code while not having
a chance to know how it behaves and
performs in production like systems, how
customers feel about it, how it matches
with actual needs.
Software Development Team
Whatever is given to ship in
production, make sure it runs. If it
doesn’t – hack into it somehow.
a.k.a. Deploy and Pray
System Engineering Team
Responsible to adhere to high quality
standards, very often blindly without
being given all the tools, resources and
Quality Assurance Team
The space in between representing
confusion, misalignment, walls, and stress.
Developers and System Engineers
working together make it possible to
better understand each other and
make cool things such as automation.
Customer focused prioritization, overload
identification points, calmness, better services, and
task scope improvements.
A point to seed the DevOps approach -
team setup as a transitional step to
infuse cooperation of developers and
DEVOPS – Transitional Team approach
(there is no right or wrong – whatever works!)
The Bad The Good
Having an all-powerful team
creates an isolated silo and an
operational knowledge bottleneck.
Capability and expertise increases leading to
increased scope of responsibilities and
competencies while overall team throughput
can reach limits.
Initially, expected confusion on what
specialties and opportunities can be covered
by who within team. This can be manifested
as team overload and chaos, queues will help.
NEXT LEVEL TOWARDS DEVOPS: TECHNICAL
QA, Feedback systems, and Logs
Uniformity & Automation
Containers & Service discovery
See DevOps Transformation – technical aspects
NEXT LEVEL TOWARDS DEVOPS: ORGANISATIONAL
CODE & DATA TOOLCHAINS
Product teams are independent, having full
expertise and responsibility over software
development, testing, deployment toolchain, and
production software operations.
Indicative (team decides):
50% Software development
20% Infrastructure-as-code development
20% Product testing automation
Product DevOps Teams
Site Reliability Engineering Team is small but responsible for
the internal and production container infrastructure-as-code
reliability and performance.
Indicative (team decides):
40% Operate Infrastructure, reliability, performance at scale
30% Innovate and improve production/IaC
30% Business/Customer technical expertise
Site Reliability Engineering Team
“SRE team is responsible for availability, latency,
performance, efficiency, change management,
monitoring, emergency response, and capacity
“DevOps represents a change in IT
culture, focusing on rapid IT service
HOW WOULD DEVOPS ORGANISATION LOOK LIKE!
SANITY CHECK: CONWAY’S LAW
“Any organization that designs a system
(defined broadly) will produce a design
whose structure is a copy of the
organization's communication structure!”
WATCH OUT POINTS!
Focus not on output
and development but
on outcome and
not mean isolation,
paramount to function
within one roof
Ensure that teams
products do not drift
away from company
vision and goals
Reach a point of
Trust your tests and data
Independent Teams - Reach technical product independence
Internal eq. production
Automate until bored
Rely on your Feedback Systems
SRE Team - Manage IaC & containers at scale
Docker probing Improve
WHAT OTHERS ARE SAYING! So, you don’t feel lonely
Who manages the DevOps initiatives?
• Development teams
• Shared management
Creating appropriate testing environments for databases can be difficult.
What approach does your organization generally use?
• The testing environment resembles the production environment as
closely as possible, including transaction and data scale
• Use transaction capture and replay from production to test with data
replicated/masked from production
What is the key element to successfully implementing a DevOps approach?
• Support from executive leadership
• Ensure that there are flexible, available resources
What is the most significant drawback in traditional development processes?
• Difficult to respond to changing business requirements
• Lack of communication between development and operations
DELL, 2016: The Current State and Adoption of DevOps
top two answers
If you automate a mess, you get an automated mess.
Rod Michael, Rockwell Automation.
Reconsolidate the technology
Maintain business growth and expansion
Assess transition risks
Re-organize towards independent product teams
Master system and organizational scaling up/down
Innovate & Improve