Chapter 1. Fostering Change

“If you aren’t embarrassed by the first version of your product, you shipped too late.”

Reid Hoffman, LinkedIn cofounder and former PayPal COO

Over the past 20 years, I’ve seen successful organizations use the same general process: shipping small batches of software in short iterations, using the resulting feedback loop to drive improvements to their software. These teams continuously learn and change their software to match user needs.

IT organizations that follow this process are delivering a different type of outcome rather than implementing a set of requirements. They’re giving their organization the ability to adapt and change monthly, weekly, even daily. This is the outcome of Agile software development, and it’s at the core of how IT can drive innovation for their organization.

Small-Batch Thinking

By “small batches,” I mean identifying the problem to solve, formulating a theory of how to solve it, creating a hypothesis that can prove or disprove the theory, doing the smallest amount of coding necessary to test your hypothesis, deploying the new code to production, observing how users interact with your software, and then using those observations to improve your software. The cycle, of course, repeats itself, as illustrated in Figure 1-1.

Small-batch thinking is a cyclical process.
Figure 1-1. Small-batch thinking is a cyclical process.

This entire process should take at most a week—and ...

Get Monolithic Transformation now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.