Circa un anno fa abbiamo iniziato il viaggio di rompere lentamente la nostra piattaforma di e-commerce e sostituirla con servizi riscritti più piccoli. Ora disponiamo di diversi team che si concentrano su aree separate del sito web, ad es. Cassa, carrello, ricerca ecc ecc
Ciascuno di questi team si prende cura di un certo numero di servizi che forniscono la funzionalità di cui sono responsabili. La sfida che stiamo affrontando è come mantenere questi team coordinati, seguendo le stesse pratiche, rispettando i requisiti di architettura di alto livello, mantenendo le API che sono adeguatamente simili (ad esempio usando la stessa terminologia per concetti come il carrello / carrello) senza dumping un carico di riunioni e processi su di loro? Uno dei grandi vantaggi della nostra attuale configurazione è che gli sviluppatori si sentono responsabilizzati e non vogliamo rimuoverli completamente!