While the twelve principles of the Agile Manifesto are clearly defined, a concrete definition for the word agile is harder to come by, and many are fine with that. The results of agile thinking, methodologies, and practices have defined the term for those who have embraced the software development strategy, including Google.
Senior engineering director Patrick Copeland sat down with Agile TV’s Ade Shokoya at the 2012 Agile Development Conference West to discuss how Google has used agile thinking to deliver success and innovation over the years.
One point that Copeland hits on repeatedly is that Google’s workplace culture involves “thinking of failure as part of the process.” He mentions that “embracing failure is a good thing to do” because of the data that comes out of it and what that data can be used to create in the future.
The success and popularity of a Google product is obviously the ultimate goal, though Copeland points out that the result is not always going to be a “home run.” He uses Google Wave as an example of a failure that he and teams of developers and engineers learned immensely from. Many look at Google+ as a similar, improved version of Google Wave.
Many look to Google as leaders of innovation, and Copeland credits this to the philosophy known as “pretotyping.” Like agile, pretotyping has multiple definitions, but Copeland says it best and simplest by describing it as “building the right ‘it’” and not being so concerned with “building ‘it’ right.”
Pretotyping allows for iterations to occur more frequently, for learning to occur along the way, and most importantly, for validation and confidence to be built among developers and engineers during the build.
By incorporating failure into the process, and using a “learn as you go” strategy, experimentation isn’t just allowed at Google—it’s welcomed. Google experiments with new products that have yet to be released as well as those already in existence to enable the greatest room for growth and creativity.
One agile principle crucial to implementing pretotyping, and one that Copeland stresses is absolutely being done at Google is: “The best architectures, requirements, and designs emerge from self-organizing teams.” Development teams at Google are given the ability to make changes quickly so that failures are instantly addressed, rapid iterations are met, and teams are empowered.
Even though it’s important to apply agile’s principles correctly, the flexibility allowed for companies to mold them to their own teams’ needs has resulted in a great deal of success for companies large and small.
How has embracing agile principles impacted the workflow at your company? Share your story with us below!
A resident copywriter and editor for TechWell, SQE, and StickyMinds.com, Noel Wurst has written for numerous blogs, websites, newspapers, and magazines. Noel has presented educational conference sessions for those looking to become better writers. In his spare time, he can be found spending time with his wife and two sons—and tending to the food on his Big Green Egg. Noel eagerly looks forward to technology's future, while refusing to let go of the relics of the past.