The DevOps Handbook: How to Create World-Class Agility, Reliability, and Security in Technology Organizations
Rate it:
Kindle Notes & Highlights
6%
Flag icon
The term “technical debt” was first coined by Ward Cunningham. Analogous to financial debt, technical debt describes how decisions we make lead to problems that get increasingly more difficult to fix over time, continually reducing our available options in the future—even when taken on judiciously, we still incur interest.
7%
Flag icon
As Christopher Little, a software executive and one of the earliest chroniclers of DevOps, said, “Every company is a technology company, regardless of what business they think they’re in. A bank is just an IT company with a banking license.”§
7%
Flag icon
To convince ourselves that this is the case, consider that the vast majority of capital projects have some reliance upon IT. As the saying goes, “It is virtually impossible to make any business decision that doesn’t result in at least one IT change.”
7%
Flag icon
learned helplessness, where people become unwilling or unable to act in a way that avoids the same problem in the future.
8%
Flag icon
when something does go wrong, we conduct blameless post-mortems, not to punish anyone, but to better understand what caused the accident and how to prevent it.
8%
Flag icon
We also hold internal technology conferences to elevate our skills and ensure that everyone is always teaching and learning.
8%
Flag icon
DevOps practices were outperforming their non–high performing peers in the following areas: Throughput metrics Code and change deployments (thirty times more frequent) Code and change deployment lead time (two hundred times faster) Reliability metrics Production deployments (sixty times higher change success rate) Mean time to restore service (168 times faster) Organizational performance metrics Productivity, market share, and profitability goals (two times more likely to exceed) Market capitalization growth (50% higher over three years)
8%
Flag icon
On the other hand, DevOps shows us that when we have the right architecture, the right technical practices, and the right cultural norms, small teams of developers are able to quickly, safely, and independently develop, integrate, test, and deploy changes into production. As Randy Shoup, formerly a director of engineering at Google, observed, large organizations using DevOps “have thousands of developers, but their architecture and practices enable small teams to still be incredibly productive, as if they were a startup.”
12%
Flag icon
REDUCE THE NUMBER OF HANDOFFS In the technology value stream, whenever we have long deployment lead times measured in months, it is often because there are hundreds (or even thousands) of operations required to move our code from version control into the production environment. To transmit code through the value stream requires multiple departments to work on a variety of tasks, including functional testing, integration testing, environment creation, server administration, storage administration, networking, load balancing, and information security.
12%
Flag icon
automate our tests so we can execute deployments safely and to parallelize them so the test rate can keep up with our code development rate.
13%
Flag icon
create more loosely-coupled architecture so that changes can be made safely and with more autonomy, increasing developer productivity.
13%
Flag icon
Incorrect, missing, or unclear information, materials, or products create waste, as effort is needed to resolve these issues. The longer the time between defect creation and defect detection, the more difficult it is to resolve the defect.
13%
Flag icon
Reliance on nonstandard or manual work from others, such as using non-rebuilding servers, test environments, and configurations. Ideally, any dependencies on Operations should be automated, self-serviced, and available on demand.
13%
Flag icon
Heroics: In order for an organization to achieve goals, individuals and teams are put in a position where they must perform unreasonable acts, which may even become a part of their daily work (e.g., nightly 2:00 a.m. problems in production, crea...
This highlight has been truncated due to consecutive passage length restrictions.
13%
Flag icon
Our goal is to make these wastes and hardships—anywhere heroics become necessary—visible, and to systematically do what is needed to alleviate or eliminate these burdens and hardships to achieve our goal of fast flow.
13%
Flag icon
Improving flow through the technology value stream is essential to achieving DevOps outcomes. We do this by making work visible, limiting WIP, reducing batch sizes and the number of handoffs, continually identifying and evaluating our constraints, and eliminating hardships in our daily work.
14%
Flag icon
Our goal is to increase information flow in our system from as many areas as possible, sooner, faster, cheaper, and with as much clarity between cause and effect as possible. The more assumptions we can invalidate, the faster we can find and fix problems, increases our resilience, agility, and ability to learn and innovate.
Keith
Architecture, when done correctly, is key to invalidating bad assumptions sooner.
14%
Flag icon
The Fifth Discipline: The Art & Practice of the Learning Organization described feedback loops as a critical part of learning organizations and systems thinking.
14%
Flag icon
goal is to create fast feedback and fast forward loops wherever work is performed, at all stages of the technology value stream, encompassing Product Management, Development, QA, Infosec, and Operations. This includes the creation of automated build, integration, and test processes so that we can immediately detect when a change has been introduced that takes us out of a correctly functioning and deployable state.
Keith
Architecture is done with gathering of requirements during Product Management in this statement. Some of the Architecture is refined in the Development cycle. Feedback loops during Architecture are critical!
14%
Flag icon
Telemetry also allows us to measure whether we are achieving our intended goals and, ideally, is radiated to the entire value stream so we can see how our actions affect other portions of the system as a whole.
14%
Flag icon
Feedback loops not only enable quick detection and recovery of problems, they also inform us on how to prevent these problems from occurring again in the future.
14%
Flag icon
“When I headed up quality engineering, I described my job as ‘creating feedback cycles.’
14%
Flag icon
Shewhart cycle—plan, do, check, act—popularized
14%
Flag icon
In complex systems, adding more inspection steps and approval processes actually increases the likelihood of future failures. The effectiveness of approval processes decreases as we push decision-making further away from where the work is performed. Doing so not only lowers the quality of decisions but also increases our cycle time, thus decreasing the strength of the feedback between cause and effect, and reducing our ability to learn from successes and failures.¶
14%
Flag icon
We use peer reviews of our proposed changes to gain whatever assurance is needed that our changes will operate as designed.
Keith
Code Reviews!
15%
Flag icon
Lean defines two types of customers that we must design for: the external customer (who most likely pays for the service we are delivering) and the internal customer (who receives and processes the work immediately after us). According to Lean, our most important customer is our next step downstream. Optimizing our work for them requires that we have empathy for their problems in order to better identify the design problems that prevent fast and smooth flow.
15%
Flag icon
architecture, performance, stability, testability, configurability, and security) are prioritized as highly as user features.
15%
Flag icon
Dr. Ron Westrum was one of the first to observe the importance of organizational culture on safety and performance. He observed that in healthcare organizations, the presence of “generative” cultures was one of the top predictors of patient safety. Dr. Westrum defined three types of culture: Pathological organizations are characterized by large amounts of fear and threat. People often hoard information, withhold it for political reasons, or distort it to make themselves look better. Failure is often hidden. Bureaucratic organizations are characterized by rules and processes, often to help ...more
15%
Flag icon
Bethany Macri, an engineer at Etsy who led the creation of the Morgue tool to help with recording of post-mortems, stated, “By removing blame, you remove fear; by removing fear, you enable honesty; and honesty enables prevention.”