A repeated question I’ve had about my article on mobile strategy is what I meant in my off-hand comment about arranging ‘Y’ shaped feature teams. Clearly, it needs a little more explanation.
Instead of arranging development efforts into teams that focus on specific platforms, instead teams should focus on a feature, from end to end, across all parts of your systems. From whatever services are required right through to including the feature in the mobile apps, on all platforms.
Of course, developers have preferences. And these preferences mean that while everyone will probably be willing to jump into the services, there’s going to be some specialisation in the apps. Hence the ‘Y’ shape.
Why is this a good thing? It makes most sense when trying to grow an application across multiple platforms simultaneously. Aligning the team with your unit of delivery means you will actually be able to deliver those units, independently. It’s also good for consistency, and it’ll be cheaper as only one team will need to understand the feature.