Greenplum’s Gavin Sherry on Remaining Agile Within the Enterprise

September 18, 2012 Paul M. Davis

One of the greatest challenges for an enterprise is iterating while delivering quality products as teams grow in size and projects become increasingly complex. Unchecked, a nimble startup can become burdened with well-intentioned procedures and management models that nevertheless slow the pace of innovation. One of the ways Greenplum avoids this risk can be found in its Metro project, which assembles small ad-hoc teams that are given the freedom to experiment and deliver solutions in a matter of days or hours.

Headed up by Greenplum software architect Gavin Sherry, Metro identifies subject matter experts among the staff who are eager to “think laterally” about a specific problem. Sherry explains that he assembles “special operations teams to very quickly identify a problem, find a solution, and execute upon it within days rather than a month.” Some Metro projects may only take a day, others three or five, but even the largest are capped at two weeks.

Coding

Fittingly, the work environment for Metro teams resembles that of a startup more than an enterprise. “We foster an environment of breaking down standards, where we’re not trying to conform to usual work habits,” Sherry says. “Painting on the walls is encouraged, ping-pong is fine, as long as the focus is on the product.” This expressive environment isn’t merely to foster a fun culture, he explains. It frees the team members to step away from the minutiae of a problem and recognize the top priorities.

Once a team is assembled, they meet for a structured planning stage of three hours or less, to articulate the problem and break its solution into discrete and actionable steps. They do this by developing “user stories,” which describe how a stakeholder experiences a project in clear and descriptive language.

Sherry compares the process as similar to building a house. Once the figurative house is built, he says, “I should be able to walk through the front door. I should be able to walk two floors easily.” Outlining a problem’s basic scaffolding in this way reveals tasks and goals that will deliver maximal value to stakeholders in a short amount of time.

Pairing

“Once we describe the problem in terms of stories,” Sherry says, “we prioritize by figuring out what the optimal value opportunity is.” The team asks itself: what does a successful solution to this problem look like, and how is that measured? “The point of done” for a project, he explains, “is the minimum viable product. If you think of the minimal product as something that is done but provides no value, and the maximal product as providing all of the things you could think of, where is the point at which the least effort is expended but the most important requirements addressed?”

Management and business analytics have historically measured tasks in discrete amounts of time. But this method is counterintuitive for these short-term, high impact projects as it can cause delays and scope creep. “It’s tempting to break down tasks into human units of time,” he says, “but humans are bad at estimating how much time it will take for them to complete a task.” Instead, tasks are rated by a three-point system. Each task must have a functional component, with a three-pointed task estimated to take three times longer to complete than a one-pointed task. Every step in the project, he says, “should be commensurate with the size of a Metro project.”

Over the course of time, a team achieves “project velocity,” Sherry says. If a team is achieving 20 points within a week, it can collaboratively look at its performance and reflect on how to reach 25 the following week.

The notion of project velocity comes out of agile software development, as do many ideas behind Metro. When appropriate, Metro teams might use other ideas from agile or extreme programming, such as pair programming, the co-operative coding technique also practiced by Pivotal Labs.

Demo

Agile methods deliver valuable results quickly, and this is reflected in each project’s goals and timetable. “At end of a two week interval,” Sherry says, “the valuable thing produced must be demonstrated to the stakeholders. Demonstrations are compulsory, and are very well-attended.”

Sherry emphasizes that Metro does not operate as its own island within Greenplum, but instead iterates on the company’s products in direct and measurable ways. Hence the project’s name, inspired by the subway systems in large metropolitan cities around the world which function as “common pieces of infrastructure” within a city, “common assets to which everybody contributes and which serve all.”

And since teams are assembled on an ad hoc basis, the project engages the skills and talent of employees across the Greenplum enterprise, and empowers them to achieve in new and unique ways. “When a group has successfully added value,” Sherry says, “meaning it can be placed into a production environment, the team has had an opportunity to leave its mark on the entire organization.”

About the Author

Biography

More Content by Paul M. Davis
Previous
Ryan Dy – Java Script
Ryan Dy – Java Script

… Read more

Next
Experience Report: Engine Usage That Didn't Work
Experience Report: Engine Usage That Didn't Work

On the project I'm currently working on we have a main portal that provides a user registration system and ...

Enter curious. Exit smarter.

Register Now