Recentemente, começamos a dividir nosso aplicativo Web monolítico em microsserviços, cortando lentamente a funcionalidade e reescrevendo em microsserviços individuais. Tudo está indo bem, exceto que não temos certeza da melhor maneira de organizar o trabalho de front-end. Nós nos dividimos em equipes de produtos, cada uma gerenciando o código para um pequeno número de microsserviços para fornecer uma área funcional, por exemplo, Pesquisa, CMS, Checkout etc.
O problema é que, embora cada uma dessas equipes de produto tenha sua própria base de código de back-end, temos uma única base de código React.js de front-end com os desenvolvedores de front-end em cada equipe de produto. Isso está causando vários problemas:
- Falta de comunicação entre equipes de produtos entre os desenvolvedores de front-end
- Problemas ao obter alterações feitas no código de front-end que a outra equipe "possui" para suportar novos recursos de outras equipes
- Nenhum especialista técnico isolado para representar a equipe de front-end, enquanto outras equipes de produto têm líderes técnicos, não há ninguém cumprindo esse papel para o front-end
Estávamos imaginando como outras pessoas estão lidando com isso, e discutimos algumas abordagens, como dividir a base de código de front-end, criando uma equipe de produtos de front-end com a qual os usuários corporativos normalmente se envolvem para obter novos recursos e solicitações de dados / serviços. outras equipes de produtos da equipe front-end, mas ambas parecem ter seu próprio conjunto de problemas!