Product-based delivery of cloud - Building a Cloud Operating Model

Product-based delivery of cloud

Amazon Web Services (AWS) most successful cloud customers utilize a product mindset to ensure great customer experiences. A product in this context is defined by:

  1. Performing a constrained number of common tasks very well,

  2. Having clearly defined inputs and outputs,

  3. Being useful to multiple customers, and

  4. Continuously improved to meet the needs of those customers.

For example, Amazon.com uses multiple product teams to run their customer website. Product definition is important as it's the interrelationship between products, the customers that use the products (consumers), and the teams that create the products (suppliers). These interdependent relationships highlight where product teams are both consumers and suppliers. This interdependency requires an additional level of ownership, accountability, and scrutiny so that each team is incented to provide a higher quality products and services.

When companies do not effectively define and operate their systems as products, they often experience foundational failures that cross-product accountability would inherently handle or avoid. With each product team fully functional from business to operations, they are wholly accountable for all aspects of their services. Even shared service providers are product owners and offer a service that other product teams can choose to use. Although, the products should be in demand or we should question their existence. The core outcome is that each product team owns accountability and does not surrender this responsibility to any other product supplier.

By owning the operation of a product all the way to the end customer (internal/external) cultivates empathy with the customer's perspective. As product owners choose to enter into contracts with other product owners, a supplier/consumer relationship is created and trust is developed. Empowering product teams to make their own choices on how they solve problems and which other products they use enables the full and complete accountability for the product and how it is perceived by their customers.

Core to a properly functioning product mindset are four key foundational concepts that will help ensure future customer impacting events are minimized:

  • Appropriately defined products are fully and completely owned from requirements to production support by a single 2-pizza team (6 – 10 people).

  • A culture of accountability, empowerment, and self-reliance for each product team such that any and all services they provide exceed expectations regardless of any dependencies or other leveraged products/services.

  • A clear structure of what is minimally required for a journey to production and who is influential/responsible in each step along the way. There should be minimal gates but there should be an abundance of high-quality advice both provided and given by key product teams.

  • The product definition, metrics, and dependencies (including APIs, root cause analysis, disaster recovery testing, game days, etc.) that a product owner understands about their product is centrally published and available to other product owners who are either a consumer/supplier. By understanding more about your dependencies, you understand more about your own product.