Example: A Cloud App Feature Team
The team is one of 24 teams for a product.
The product exists in a business platform of more than 20 online digital products that interoperate.
There are extended team members for specialties such as machine learning, UX, and SRE.
There is a separate product design team that meets with each product’s development team leads every two weeks. The design team maintains the overall user interaction vision for all of the 20 products. The embedded UX team members help the development teams to implement that vision in each product.
There is a team lead who has skills in transformational leadership.
There is a team tech lead who is the final arbiter of technical decisions made by the team. However, the team lead ensures that the team lead works in an inclusive and transparent manner.
The team also has a team lead who is a “people person” and who has formed a relationship with each team member.
One of the team members is a natural “organizer”, and the team lead has asked that person to keep things organized, including the team’s dashboard, their wiki, and other artifacts. That person is also good at nudging things forward, by comparing progress against aspirational targets for finishing features, and noticing critical path dependencies.
There is a product technical architect who is the final arbiter of technical decisions for the product.
There is a product suite technical architect who is the final arbiter of technical decisions spanning the suite of 20 products.
There is a product manager for the product. The product manager is able to act as a servant leader, is inquisitive about the work, and forms strong relationships with the team leads. The product manager is also an effective advocate for the product teams.
There are core microservices that are used by this product and other products as well. Those are maintained by dedicated teams.
There is an Agile data architect on each team, to maintain a Domain model. This extends to service APIs and data objects sent to a data lake.
The business platform is maintained as an internal product by a separate set of teams. This includes enterprise cloud accounts, security policies, cloud architecture, single sign-on., and shared services for testing and deployment.
There is a product test lead, who oversees the product’s testing strategy. She reviews and enhances the test specs for each product feature.
There is a QA team that writes use case level automated tests that span products, to ensure that all of the products interoperate well. These tests are available to all teams, and are run by integration pipelines, but can also be run by any developer.
The team tech lead has participated in discussions with the product tech lead and other team tech leads about how to automate builds, deployments, and testing. There is a testing strategy in the product wiki that lists the various test suites and where they are designed to be able to be run.