Les deux principaux défis d’une approche de microservices résident dans les styles de travail des différentes équipes et le sentiment de n’avoir jamais « terminé ». Au sujet du premier, si les microservices permettent une amélioration de la productivité et élargissent le choix d’outils, il arrive souvent que chaque équipe préfère utiliser ses propres langages, frameworks et bibliothèques. L’indépendance propre aux microservices peut freiner les équipes qui n’y sont pas préparées. Deuxièmement, les architectures monolithiques ont quelque chose de très séduisant : les changements prennent la forme d’un grand projet dont les points de départ et d’arrivée sont clairs. Avec les microservices, le changement est toujours en cours. Le changement constant n’est pas un « bug » mais une fonctionnalité d’un système viable et évolutif, et les équipes peu familiarisées avec ce type de flux devront peut-être faire un effort pour s’adapter.