Navan ramène une migration d’un mois à une semaine, sans geler la base de code
La dernière migration de Navan a porté sur 8 applications et 15 bibliothèques, et s’est achevée en une semaine environ, sans geler le développement.
La dernière migration en date de Navan a porté sur 8 applications et 15 bibliothèques, et s’est achevée en une semaine environ, sans geler le développement. Il y a deux ans, une migration comparable avait pris plus d’un mois, et une tentative ratée de fusionner avait bloqué la branche master pendant une journée. Ce qui a tout changé, ce sont les Agents Cloud de Cursor : Navan a pu planifier la migration une seule fois, puis l’exécuter en parallèle sur 8 applications, sur ses propres machines self-hosted, au lieu de laisser un seul ingénieur s’en charger seul.
Une migration de 8 applications bouclée en une semaine au lieu d'un mois
Il y a deux ans, migrer la base de code de Navan vers une nouvelle version de Spring avait pris plus d'un mois à Rahul Popuri, Ingénieur logiciel expert senior. Durant cette période, des push incomplets et des retours en arrière avaient bloqué la branche master pendant une journée. Et les perturbations ne se sont pas arrêtées avec la levée du blocage : plusieurs jours plus tard, d'autres ingénieurs peinaient encore à intégrer leurs modifications. Mais le coût le plus lourd n'était pas le blocage lui-même : c'était un mois entier de travail d'un ingénieur consacré à la migration plutôt qu'à livrer des fonctionnalités ou à corriger des bugs.
La migration la plus récente de Navan, vers Spring Boot 4, s'est achevée en une semaine environ, avec moins de perturbations pour le développement en cours. Avec Cursor, Rahul a planifié la mise à niveau en amont, puis a délégué chaque composant à des Agents Cloud exécutés sur les machines self-hosted de Navan : 8 applications et 15 bibliothèques ont ainsi migré simultanément plutôt que les unes après les autres. Les agents ont utilisé l'outillage interne de Navan et lancé des navigateurs sur ces mêmes machines pour tester les parcours utilisateur et vérifier leurs modifications.
Par le passé, une seule tentative ratée de fusionner suffisait à paralyser les chantiers en cours. Cette fois, j'avais huit applications qui migraient simultanément, tout en limitant au maximum les perturbations pour le développement en cours.
Rahul ne se contentait pas de surveiller l'exécution d'une seule mission. Il supervisait plusieurs agents qui mettaient à niveau différentes applications simultanément, un niveau de travail en parallèle qui, selon lui, aurait été impossible ne serait-ce que quelques mois plus tôt.
Les Agents Cloud prennent en charge la vraie charge de travail
Rahul a transféré la quasi-totalité de son travail vers les Agents Cloud de Cursor. Le travail lié à GitHub s’exécute sur une infrastructure gérée par Cursor. Les MCP internes pour Snowflake et Slack s’exécutent sur les propres machines self-hosted de Navan, où les agents peuvent aussi lancer un navigateur pour vérifier leurs propres modifications. Les Automatisations, les Compétences et les Souvenirs reposent sur cette configuration : les boucles d’évaluation et les migrations se poursuivent ainsi de manière asynchrone, sans que personne n’ait à les surveiller.
Depuis, ce pattern a largement dépassé le cadre d’un seul ingénieur : environ 200 personnes chez Navan utilisent désormais activement les Agents Cloud de Cursor, soit dix fois plus qu’en avril 2026.
Avant Cursor, les ingénieurs de Navan avaient construit une véritable infrastructure autour de leur précédent agent de codage, mais celui-ci exigeait qu’une personne reste devant son poste, la session ouverte, du début à la fin. Impossible, dans ces conditions, de mener le travail parallèle et asynchrone dont Navan avait besoin.
Le même effet de levier se retrouve dans les équipes produit
Côté produit, Elton Yang, Ingénieur logiciel expert chargé des dépenses et de la facturation, crée de nouveaux agents pour les flux de travail liés aux dépenses et à la facturation à partir d’une simple description. Cursor suit les patterns de conception existants de l’équipe et rédige lui-même les requêtes de l’agent : les tests peuvent ainsi commencer le jour même, sans attendre des heures de rédaction manuelle de la requête initiale.
Nous n’avons même plus besoin d’écrire nous-mêmes la requête de l’agent. Cursor s’appuie sur nos conceptions précédentes et rend un agent opérationnel le jour même.
Ce changement a redéfini ce qu’une petite équipe peut prendre en charge. Après le départ de nombreux ingénieurs de l’équipe dédiée aux agents d’IA de Navan, un seul ingénieur a repris des développements de fonctionnalités qui mobilisaient auparavant 2 ou 3 ingénieurs sur plusieurs sprints. L’un des exemples les plus parlants est la liaison bancaire manuelle : cet ingénieur a recréé un formulaire Angular en React et développé le backend associé, passant d’un travail purement backend à un travail full-stack lorsque la tâche l’exigeait. Ce chantier porté par une seule personne est resté centré sur de nouvelles fonctionnalités, sans basculer dans la simple maintenance.
Cursor a aussi changé la manière de prendre le relais d’un collègue. Quand Elton a dû reprendre deux bases de code qu’il connaissait mal pendant le congé d’un collègue, Cursor a mené l’investigation à sa place : il a récupéré les journaux et les enregistrements de la base de données, puis exposé le problème avant même qu’Elton n’ouvre un seul fichier.
Je ne connaissais pas vraiment ces deux bases de code. J’ai dit : « Voici le problème, aide-moi à comprendre. » Il a récupéré les journaux et la base de données et m’a tout expliqué, comme si je travaillais dans ce dépôt depuis des mois.
Résultat : environ deux jours de montée en compétence économisés sur les deux bases de code, sans compter le stress de devoir les découvrir à froid.
La revue reste entre les mains des humains. Elton considère l’agent comme un binôme de programmation, et non comme un oracle du code : il suit le raisonnement de l’agent pendant son exécution et corrige les hypothèses erronées dès qu’il les repère. Une fois généré, le code passe par le même processus de revue humaine et de revue par l’IA, de tests et de préproduction que tout le reste, et les modifications complexes sont vérifiées en préproduction avant la mise en production. Les agents planifient et exécutent le travail, mais ce sont les ingénieurs qui tranchent et qui assument la responsabilité de fusionner en dernier lieu.
Si vous menez des migrations ou des chantiers parallèles qui nécessitaient auparavant une équipe complète et une base de code verrouillée, contactez-nous pour démarrer un essai de Cursor.