Un nouveau produit à structurer
Avant d'écrire le code, il faut choisir les briques, le découpage, le modèle de données et la façon dont l'application et l'API se parlent.
Expertise
Conception et revue d'architecture logicielle pour applications mobiles, web et API : découpage en modules, modèle de données, contrats d'API, migrations progressives. Chaque choix structurant est documenté, avec ses alternatives et ses conséquences.
Remplacer le module de paiement par étapes, derrière la même interface, plutôt que réécrire l’application.
Réécriture complète : les évolutions seraient gelées pendant toute la reconstruction.
Deux implémentations coexistent pendant la migration ; chaque vague peut être livrée seule.
Situations
Avant d'écrire le code, il faut choisir les briques, le découpage, le modèle de données et la façon dont l'application et l'API se parlent.
Chaque fonctionnalité en fragilise une autre, les dépendances sont emmêlées et l'équipe n'ose plus toucher certaines parties.
Changement de framework, de gestion d'état ou de base de données, à mener sans interrompre un produit en production.
Les choix ont été faits, mais ni leurs raisons ni les alternatives écartées ne sont écrites. L'équipe qui arrive doit tout redécouvrir.
Périmètres couverts
Une architecture se juge à ce qu'elle permet de changer sans tout casser. Nous la concevons, la documentons et la faisons évoluer avec l'équipe qui la maintiendra.
Découpage en modules, gestion d'état, navigation et dépendances pour les applications Flutter, Swift, Kotlin et Next.js.
Modules métier, contrats d'API documentés, authentification et intégrations, sur NestJS et Node.js.
Schémas PostgreSQL, migrations versionnées, choix entre base relationnelle et documentaire selon les usages.
Messagerie, diffusion et synchronisation : WebSocket, WebRTC, LiveKit ou LL-HLS selon la latence et le coût visés.
Remplacement par étapes selon le modèle Strangler Fig plutôt qu'une réécriture : le produit reste en production pendant la migration.
Diagrammes versionnés dans Git, contrats d'API et notes de décision : chaque choix structurant indique les alternatives considérées et ses conséquences.
Méthode
Usages, volumes, équipe, échéances et existant technique. Une architecture répond à des contraintes, pas à une mode.
Architecture cible et options possibles, avec leurs coûts, leurs risques et ce qu'elles rendront difficile ensuite.
Diagrammes, modèle de données, contrats d'API et notes de décision, versionnés avec le code.
Fondations, revue de code et migration par étapes, aux côtés de votre équipe ou en prenant en charge le développement.
Responsabilités
Répartition courante des responsabilités, arrêtée mission par mission dans le contrat.
| Sujet | Chez vous | Chez Black Tide |
|---|---|---|
| Contraintes | Vous partagez les usages, les volumes et les échéances | Nous les traduisons en exigences d'architecture |
| Choix structurants | Vous validez l'option retenue | Nous proposons les options et documentons les conséquences |
| Documentation | Vous l'hébergez dans vos outils | Nous la rédigeons et la tenons à jour pendant la mission |
| Revue de code | Votre processus s'applique | Nous veillons au respect des choix d'architecture |
| Migration | Vous arbitrez le rythme et les priorités | Nous migrons par étapes, sans interruption de service |
Preuve
Migration progressive selon le modèle Strangler Fig : application Flutter passée par vagues à hooks et Riverpod, backend en cours de migration de MongoDB vers PostgreSQL, table par table, sans interruption de service.
Lire le cas BlisterrTrois blocs articulés : une application Flutter, une API NestJS d'une vingtaine de modules métier et un pipeline Python qui synchronise environ 125 000 livres.
Lire le cas Fantasy AlleyChaque cas décrit le travail réellement réalisé, son périmètre et son statut.
Budget et suite
Les questions d'architecture à trancher, l'existant à examiner et les livrables attendus : architecture cible, modèle de données, contrats d'API.
Le temps de conception et de documentation, l'étendue de l'existant à examiner et l'accompagnement de la mise en œuvre, s'il est demandé.
Les livrables sont écrits pour être repris par l'équipe qui développe, la vôtre comme la nôtre.
Revue d'architecture seule, conception d'une architecture cible ou accompagnement complet de la mise en œuvre.
Questions utiles
Pas par défaut. Un monolithe bien découpé en modules convient à la plupart des produits et reste plus simple à exploiter. Nous découpons en services quand une contrainte réelle le justifie.
Oui. Nous examinons d'abord le code et l'exploitation, puis proposons une trajectoire d'évolution par étapes plutôt qu'une réécriture.
Selon le périmètre : diagrammes d'architecture, modèle de données, contrats d'API et notes de décision, versionnés avec le code.
Oui. L'architecture est conçue avec l'équipe qui la maintiendra, en projet ou en renfort, pour que les choix soient compris et appliqués.
Prochaine étape
Votre produit, son existant technique et ce qui doit pouvoir évoluer : c'est le point de départ d'une revue utile.