Notre SaaS de transcription passé de Rails à Rust en sept jours, sans déconnecter personne
SoundScript.AI transforme l'audio en texte dans 99 langues. Son application Rails faisait tourner le site, les tâches de fond et Redis sur un seul petit serveur et atteignait ses limites. Nous l'avons réécrite en Rust, vérifiée page par page face à l'ancienne application et basculé la production dans une fenêtre d'environ quatre minutes.
- Client
- Envixo
- Plateforme
- Application web et API mobile
- Secteur
- IA et SaaS
- Lancement
- 2026
Le défi
L'application Rails 8.1 fonctionnait, mais Puma, Sidekiq, Redis et PostgreSQL partageaient un serveur de 1.9 GB de mémoire. En charge, les pages mettaient des secondes à répondre, et en juillet 2026 les tâches de fond sont restées bloquées cinq jours.
Ce que nous avons créé
Une réécriture complète du produit, pas un prototype : le site en 99 langues, le pipeline de transcription, les résumés et le chat IA, les exports, la facturation, l'API mobile et la console d'administration.
Mêmes URL et mêmes contrats
Chaque page localisée, chemin de webhook, point d'entrée de l'API mobile et bucket de stockage est resté identique : liens, applications et intégrations ont continué de fonctionner.
Personne n'a été déconnecté
L'application Rust lit le cookie de session de Rails et les empreintes de mots de passe existantes : les utilisateurs sont restés connectés pendant la bascule.
Données vérifiées, pas supposées
Après la copie finale, les nombres de lignes et les sommes de contrôle des comptes, transcriptions, usages et abonnements ont été comparés entre l'ancienne et la nouvelle base : identiques.
Un banc de test de parité
1,126 requêtes de pages sur 11 types d'utilisateur et quatre langues, 39 envois de formulaires et 343 requêtes d'administration ont été rejoués sur les deux applications et comparés.
Tout le produit
Transcription avec Whisper et Azure, statut en direct, résumé et chat IA, exports TXT, SRT, DOCX et PDF, facturation Stripe et Google Play, et une console d'administration.
Un retour arrière sûr
L'ancien serveur est resté intact deux semaines après la bascule : un retour arrière n'était qu'un changement de DNS.
Résultats techniques
Mesuré lors d'un test de charge avant le lancement, sur une machine partagée : les valeurs absolues sont indicatives, les rapports tiennent.
- Production basculée dans une fenêtre d'environ quatre minutes
- Inscription, envoi, statut en direct, téléchargements, IA, API et administration vérifiés en production après la bascule
- Le test de charge a révélé un bug du pool de connexions, corrigé avant le lancement
- 99 langues, y compris des PDF de droite à gauche
Technologie
- Rust
- axum
- PostgreSQL
- Typst
- OpenAI Whisper
- Azure Speech
- Stripe
- Kubernetes
Besoin d'un logiciel conçu autour de votre activité ?
Intégrations, outils internes, applications et plateformes, créés sur commande par des ingénieurs seniors qui pilotent des agents IA. Dites-nous ce dont vous avez besoin et nous vous montrerons comment nous le construirions.