On Wednesday my esteemed colleague @liluns and I went to the AWS Summit in London, which is several thousand people crammed into one end of the Excel Centre in the Docklands. We are not AWS experts by any means so we visited some of the more managementy talks, including a panel with AWS senior management about how they’ve managed to create a company which churns out products like their peers churn out parcels.
As well as standard comments about teams based on pizza sizes (hello Agile), there were several things which I found particularly thoughtful from Dave McCann, Amazon’s VP of AWS Marketplace, Service Catalog and Migration Services. Two of these things are perennial favourites in software engineering, which are;
- New functions and products come from listening to clients, users and business.
- It’s better to get a minimum viable product out of the door and start working with the end user to shape that, then getting out a polished product and having to work back what you did.
The first one is a constant reminder but not for the ye olde reason of IT working in an ivory tower, though that still does happen sometimes. I find this a constant useful reminder because often the client can’t be explicit about exactly what they want – there’s a problem to solve, but there’s a lot of room in that solution and you need to listen to them carefully to hear exactly what the best way of doing it is. The second is also one which seems like common sense but can be hard in a portfolio based environment, because people often hesitate about how to make it clear that a product is a work in progress.
However, the key thing I drew out of the session was the way they transition from design to build stages;
“Have backbone, debate, and commit”.
In my work I often see tension within high performing teams, and not all of it is good. People at the data foundries in our firms are those with diverse backgrounds and strong opinions, which is the essence of a good team – the team is pointless if everyone thinks alike. But that strength can become a weakness when the balance of power within the team isn’t right. If people can’t freely share ideas, or feel like their contribution is valued, the upside of collaboration corrodes away. This is the essence of the three key words in that phrase – individuals must have the courage to put ideas forth; as group the environment must be suited to debating (not ranting, proselytising, lecturing, or anything else) and once those two pieces are in place, the team as a whole commits to the decision outcome, because they feel it has been fairly reached.
Fairness is an underestimated quality in human interactions – we do have a sense of fairness such that we would rather disadvantage ourselves than let another person take advantage of us, which is why we can only really commit when those preceding stages are fair.