By Dawn Parzych, Developer Advocate for LaunchDarkly
Ever since Mark Zuckerburg uttered the phrase
"move fast and break things," it has become the motto of many development
teams. Companies wanting to be the next unicorn decided this must be the way to
operate. The race was on to release more, ship faster, never stop. If moving
slowly and methodically wasn't working, doing more had to be the key to
success.
These companies would cherry-pick statistics
from reports like the Accelerate: State of DevOps Report. The 2019 report
showed elite companies have 46x more frequent code deployments than
low-performing teams and a 2,555x faster lead time to move from code commit to
deploy to support their initiatives to move faster.
The problem is moving fast doesn't work across
industries or for all teams. And to effectively move fast, you need processes
in place to support the velocity. The consequences of moving too fast and not
being able to fix things when they break are high.
How we got here
What has gotten us to the point where we are
moving too fast? In short, we have. How do you feel when it takes months or a
week for a PR to be resolved compared to hours or days? As consumers and end-users of software, our
expectations are continually rising. We have to ship quickly because that is
what we as consumers expect. As customers, we are pushing companies, which in
turn push their employees to meet the increasing expectations.
What are the consequences when you try to move
fast and not just break things, but fail?
- It takes longer to resolve
incidents
- You lose customer confidence and
sales
- Employees burnout and you have a
high turnover rate
Let's go back to the stats from the
Accelerate: State of DevOps Report. Yes, elite teams ship faster. But, their
changes are 1/7 as likely to fail and they recover from incidents 2,604x faster
than low-performing teams. It's not just about moving fast and breaking things;
it is about having the right systems and processes in place to support this way
of working.
Setting yourself up for success
You need two things to effectively move fast:
a culture of psychological safety and smart investments in tooling. Employees
need to feel empowered to speak up if things are moving too fast, if they are
concerned about why a feature is being built, and to identify gaps in the
processes. They need to feel they won't be blamed when something breaks.
Building this requires empathy, open communication, and teamwork. This psychological safety is the foundation
of being able to move quickly and quickly recover when things break.
Next up is selecting the right tooling and
processes. Invest in tools that make things easier. Tools should be useful,
usable, and change the underlying problems, not create more.
Think about the tools in place to quickly
resolve incidents when something fails.
- Observability and monitoring tools
to identify and notify when things go wrong
- Incident management tools to
route, track, and escalate issues
- Feature management tools to enable
circuit breakers and load shedding to turn off features quickly.
The culture and tools are part of the
equation; the final piece is having the right processes in place to effectively
use the tools and support the people.
What are some processes you can implement to
enable safety at speed?
- Schedule chaos days to understand how things break and
know how to fix them
- Run experiments to gather feedback and ensure
features are moving in the right direction before a release
You should attempt to move fast, you should
try to break things-but only when you have the right protections and processes
in place. Using a combination of the right tools and processes, you can deliver
more value faster without sacrificing quality or your employees' health.
##
About the Author
Dawn Parzych is a developer advocate at
LaunchDarkly, the feature management platform that software teams use to build
better software, faster with less risk. Development teams use feature
management as a best practice to separate code deployments from feature
releases. With LaunchDarkly teams control their entire feature lifecycles from
concept to launch to value. Learn more at https://launchdarkly.com.