Nicole Forsgren on Moving Fast and Shipping High-Quality Software
Nicole Forsgren is the lead author of the Shingo Award winning “Accelerate” and the State of DevOps Reports. She’s currently the VP of Research and Strategy at GitHub. Nicole will be the keynote speaker at Test and Learn, a free virtual event for engineers, product managers, data scientists, and designers to learn how to deliver
Nicole Forsgren is the lead author of the Shingo Award winning “Accelerate” and the State of DevOps Reports. She’s currently the VP of Research and Strategy at GitHub. Nicole will be the keynote speaker at Test and Learn, a free virtual event for engineers, product managers, data scientists, and designers to learn how to deliver more resilient software, grow and get from data to insights faster.
We recently chatted with Nicole on what’s she’s going to be discussing at Test and Learn.
David Isquick, Optimizely: You’ll be talking about in your keynote for Test and Learn how companies can move fast and deliver high-quality software at the same time. Can you talk a little about how speed and quality aren’t necessarily competing objectives?
Nicole Forsgren, Test and Learn Keynote Speaker: For years, we had heard stories that companies could develop and deliver software faster and with more stability by using cross-functional teams, shifting culture, and shipping in smaller batches. A pretty notable example of this is the Allspaw and Hammond talk from Velocity in 2007, about deploying 10 times a day at Flickr. But other companies insisted this wasn’t possible.
So as a researcher — with a technical background — I wanted to test it out. And for six years in a row, we found that speed and stability move together: teams that ship code more often, in smaller bites, also see more stable releases. And teams that see more stable and reliable code are the ones shipping more often. This is because when we ship larger batches of code, it increases the likelihood of introducing a defect and broadens the blast radius. Then when we do have a defect — because there’s no such thing as never having an error — it’s much harder to debug because now we’ve introduced a big change instead of something small and targeted, increasing our downtime.
David: One of the insights from your book is that the best keep getting better, and that improvement is possible for everyone. Can you explain how teams can think about improvement and becoming higher performers when it comes to software delivery?
Nicole: One of the most important things to remember for any team and organization is the concept of continuous improvement: that wherever you are now, it’s always possible to get better. Another good concept here is constraints: the fastest way to get better is to identify the thing(s) that are your biggest blockers, and focus on those first. This way, if you’re just starting out and it feels like on everything is broken, it helps you focus on the most important items so you can really accelerate your improvement. If you’re already pretty advanced, it can be hard to understand how to really make a difference because there’s no “low-hanging fruit;” by identifying constraints, you can focus efforts where it matters. And of course, by continuously improving, you keep up with the complexity, technology, and market shifts that happen around us.
Now, when it comes to thinking about what kinds of things to consider when thinking about your constraints, our research over the last several years gives teams and organizations a good place to start: things that include technology, process, and culture. This way, you are starting with things that statistically drive software delivery performance. We covered this in the 2019 Accelerate State of DevOps Report for those who would like more info.
David: Lastly, what trends are you most excited about in the software industry?
Nicole: We can all nerd out about ML or AI or how robots are going to change the world, but the thing I’m most excited about right now is how we are going to get tech and code to more people. (Hopefully. I continue to cross my fingers on this.) Because when we do, it will completely change the game in a million ways:
- When everyone can access tech (including the internet and devices) easily and freely, we change the balance of information flow.
- When everyone can create easily, we change the balance of idea flow.
- When everyone can develop easily, we change the way our technology works. When people from the full experience of humanity can share insights and ideas, they can help shape the way tech is made, and it gets better.
Hear from Nicole and the rest of our speakers at Test & Learn on May 20. Register here: https://www.optimizely.com/test-and-learn/