The devs had a recent conversation about how they want to work. Their choices were mostly between stable component teams and flexible feature teams.
What’s a stable component team?
A team organised per application, or platform, or whatever other component the team choses to structure around, is called a component team. We have an iOS team, a few web teams, a design team, and an Android team. These are component teams.
What is a feature team?
A feature team is team of experts that deliver features to the customers. The team is not focus on a certain feature, but they only deliver customer functionalities, across platforms or apps. It’s customer-centric and everyone in the team will work to deliver the feature, no matter their speciality, e.g. to deliver a feature you need a certain amount of web, mobile, design, architecture work; if the designers finished their tasks in day two, they need to find different ways to help the team deliver the feature, either doing front-end, or some back-end, etc. It promotes full-stack and continuous learning, thus a lot of times it’t very hard to engage the devs into organising themselves as a feature team.
What is a flexible feature team? (according to Ralph)
A team of experts that work on a feature, then disassembles itself and the team members create another team with other colleagues to work on a feature, and so on. Considering this definition, it’s not really a team, just groups of people working together to deliver a feature. As they form and disengage from feature to feature, they probably don’t have the required time to turn into a proper team.
The team decided to work as flexible feature team. As an Agile Coach, I consider this to raise a lot of issues (slowing down delivery, lack of focus on quality, lack of ownership for maintenance as the team dismantles after the feature is done, wasted time to form a team, create working rules, and gel together to deliver their best work and the list can continue).
But at the same time, I can’t protect the team from learning and failure. The experiment has started yesterday, I’ll be back with results.
My question is: flexible teams or feature teams? What do you prefer?