Stage au sein de l'entreprise Swantrad
Dans le cadre de ma deuxième année de BTS SIO option SLAM (session 2026), j'ai effectué un stage du 5 janvier au 15 février 2026 au sein de la startup Swantrad, entreprise française spécialisée dans la digitalisation des traductions assermentées.
Swantrad évolue dans un secteur à forts enjeux juridiques : la traduction officielle de documents destinés aux administrations, tribunaux et entreprises. L'objectif de la plateforme est de moderniser ce domaine encore largement basé sur des processus papier, en proposant une solution 100 % numérique intégrant la signature électronique qualifiée conforme au règlement européen eIDAS.
J'ai intégré le pôle technique de l'entreprise, au sein d'un environnement startup dynamique, où la collaboration entre profils techniques, juridiques et métier est essentielle. Le projet était déjà en production, utilisé par des professionnels, mais présentait plusieurs fragilités techniques liées à son évolution progressive : dette technique importante, duplications de code, couverture de tests limitée et insuffisamment intégrée dans un processus d'intégration continue, ainsi qu'un environnement de développement instable.
Le contexte de mon stage était donc clair :
Améliorer la qualité, la maintenabilité et la fiabilité d'une
application web existante, sans impacter son fonctionnement en production.
Ce cadre m'a permis de travailler sur des problématiques concrètes de maintenance applicative, de qualité logicielle (SonarQube), de tests automatisés (Laravel / PHPUnit) et d'intégration continue (GitHub Actions), dans un contexte professionnel réel et exigeant.
Lors de ma prise en main du projet Swantrad, une analyse technique approfondie a permis d'identifier plusieurs besoins majeurs. Bien que la plateforme soit déjà en production et fonctionnelle pour les utilisateurs, son évolution progressive avait entraîné certaines fragilités techniques.
Le premier besoin concernait la stabilisation de l'environnement de développement. Le projet ne pouvait pas être exécuté correctement en local sans ajustements spécifiques liés aux versions de PHP, aux dépendances Composer et aux migrations de base de données. Il était donc essentiel de mettre en place un environnement fiable, cohérent et reproductible afin de travailler dans des conditions professionnelles.
L'analyse de la qualité du code, réalisée à l'aide de SonarQube, a également mis en évidence une dette technique importante, caractérisée par des duplications de code, des problèmes de maintenabilité et une complexité excessive sur certaines parties critiques. Un besoin clair s'est alors imposé : améliorer la lisibilité, la structure et la maintenabilité du code, sans altérer le fonctionnement de l'application en production.
Par ailleurs, la présence de code obsolète ou inutilisé (contrôleurs non appelés, vues Blade non référencées, fichiers CSS superflus) rendait le projet plus lourd et plus difficile à maintenir. Un travail de nettoyage et de rationalisation était nécessaire afin de sécuriser les futures évolutions.
Enfin, bien qu'une base de tests automatisés existe déjà, leur couverture restait limitée et leur intégration dans un processus d'intégration continue nécessitait des améliorations. Il était indispensable de renforcer la stratégie de tests automatisés. L'objectif était de prévenir les régressions, de sécuriser les modifications et d'inscrire le projet dans une démarche d'amélioration continue.
Ainsi, le besoin global du stage consistait à renforcer la fiabilité, la qualité et la pérennité technique d'une application web existante, tout en garantissant sa stabilité en production.
Le stage s'est appuyé sur un environnement web moderne, orienté qualité logicielle, architecture structurée et automatisation des validations :
- ◈ Laravel 12 (PHP 8.4) - Framework MVC pour le développement backend et la structuration de l'application,
- ◈ MySQL 8.4 & Eloquent ORM - Gestion de la base de données relationnelle et interactions sécurisées avec les données,
- ◈ Blade - Moteur de templates pour la génération dynamique des interfaces,
- ◈ Tailwind CSS 4 - Framework CSS utilitaire pour la structuration et le design des interfaces,
- ◈ Vite 6 - Outil de build et de gestion des assets front-end (CSS / JavaScript),
- ◈ Git & GitHub - Gestion de version, collaboration et suivi des évolutions du code,
- ◈ GitHub Actions (CI/CD) - Pipeline d'intégration continue pour l'exécution automatisée des tests,
- ◈ PHPUnit & Laravel Testing - Mise en place de tests unitaires, d'intégration et de non-régression,
- ◈ SonarQube - Analyse statique du code et mesure de la dette technique,
- ◈ Stripe & Yousign (API) - Intégration de services tiers sécurisés (paiement et signature électronique),
- ◈ Mailjet & hCaptcha - Gestion des emails transactionnels et protection anti-bot,
- ◈ Laragon / Node.js / NPM / Composer - Environnement de développement local et gestion des dépendances.
Cet environnement technologique m'a permis de travailler sur une architecture MVC structurée, intégrant des pratiques professionnelles telles que l'analyse de qualité, les tests automatisés et l'intégration continue, dans un contexte réel de production.
Au cours de mon stage chez Swantrad j'ai participé à l'amélioration technique d'une application web déjà en production, avec pour objectif principal de renforcer sa qualité, sa stabilité et sa maintenabilité.
Ma première mission a consisté à stabiliser l'environnement de développement local : configuration de PHP et des dépendances Composer, import et correction de la base de données, résolution de problèmes liés aux migrations et mise en place d'un workflow de développement fonctionnel.
J'ai ensuite mené une analyse approfondie de la qualité du code à l'aide de SonarQube, afin d'identifier les duplications, les problèmes de maintenabilité et les zones à risque. Sur cette base, j'ai réalisé des actions de maintenance et de refactorisation ciblées : suppression de code obsolète, réduction de duplications, amélioration de la lisibilité et factorisation de certaines logiques, tout en garantissant l'absence de régression fonctionnelle.
Une part importante de mon travail a également porté sur les tests automatisés : création, correction et enrichissement des tests unitaires et d'intégration existants, configuration d'une base de données dédiée aux tests, puis intégration complète dans le pipeline CI/CD (GitHub Actions) pour assurer une validation automatique à chaque modification du code.
Enfin, j'ai contribué à la documentation technique du projet (guides d'exécution des tests, documentation CI/CD, traçabilité Git), afin de faciliter la maintenance et la prise en main future par d'autres développeurs.
Ce stage chez Swantrad a constitué une étape déterminante dans mon parcours en BTS SIO option SLAM. Il m'a permis d'intervenir sur une application web réelle, déjà en production, avec des exigences concrètes en matière de qualité, de fiabilité et de sécurité.
Les actions menées durant le stage ont contribué à stabiliser l'environnement de développement, à renforcer la qualité structurelle du code et à fiabiliser le processus de validation des évolutions. Bien que les indicateurs globaux SonarQube n'ont pas connu une évolution spectaculaire en raison de la taille du projet et des développements parallèles, des améliorations mesurables ont été obtenues sur des métriques ciblées (Code Smells High et duplications).
Le renforcement des tests automatisés et leur intégration dans le pipeline CI/CD constituent un résultat concret et durable. Le projet bénéficie désormais d'une validation systématique avant intégration, réduisant significativement les risques de régression.
Au-delà des aspects techniques, ce stage m'a permis de développer une approche professionnelle fondée sur l'analyse, la rigueur et l'amélioration continue. Il a confirmé mon intérêt pour le développement backend et m'a permis de renforcer mes compétences en Laravel, en architecture applicative et en gestion de bases de données, dans un contexte réel de production.
Dans le cadre de ce stage chez Swantrad, plusieurs livrables techniques ont été réalisés afin de structurer, documenter et sécuriser les travaux menés sur le projet:
Analyse et qualité du code
- ◈ Rapport d'analyse initiale et finale SonarQube
- ◈ Plan d'amélioration priorisé (impact / risque)
- ◈ Liste argumentée des éléments refactorisés ou supprimés
- ◈ Comparatif avant / après sur certaines zones critiques
Ces documents formalisent l'analyse de la dette technique et les actions de maintenance menées durant le stage.
Tests automatisés
- ◈ Documentation des scénarios de tests
- ◈ Guide d'exécution des tests (local & CI)
- ◈ Rapport de tests détaillé
- ◈ Captures d'exécution réussie en local et sur GitHub Actions
- ◈ Création et correction de tests unitaires et d'intégration
Ces productions démontrent le renforcement du dispositif de validation et la sécurisation des évolutions du projet.
Intégration continue (CI/CD)
- ◈ Documentation du pipeline GitHub Actions
- ◈ Preuves d'exécudes corrections apportées au pipeline
Ces éléments illustrent la fiabilisation du processus d'intégration continue et la validation automatique du code.
Architecture et compréhension du projet
- ◈ Documentation de l'architecture MVC
- ◈ Analyse de la structure des dossiers et des rôles utilisateurs
Cette documentation facilite la maintenabilité et la prise en main future du projet.
Suivi et gestion du projet
- ◈ Comptes rendus hebdomadaires
- ◈ Diagramme de Gantt
- ◈ Historique Git commenté
- ◈ Rapport intermédiaire et rapport final
Ces livrables témoignent d'une démarche structurée, rigoureuse et professionnelle tout au long du stage.
L'ensemble de ces productions reflète une approche méthodique basée sur l'analyse, la traçabilité, la documentation et l'amélioration continue, dans un contexte réel de projet en production.
Les travaux réalisés durant ce stage ont permis de consolider les bases techniques du projet Swantrad, mais ils s'inscrivent dans une démarche progressive d'amélioration continue.
La réduction de la dette technique engagée pourrait être poursuivie par des actions ciblées sur les zones à forte complexité identifiées par SonarQube. De même, l'enrichissement progressif de la couverture des tests automatisés, notamment sur les fonctionnalités métier sensibles, permettrait de renforcer encore la fiabilité globale de la plateforme.
L'exploitation régulière des indicateurs qualité et du pipeline CI/CD constitue également un levier stratégique pour accompagner l'évolution du projet dans un contexte de production et de croissance.
Sur le plan personnel, ce stage représente une étape structurante dans la construction de mon projet professionnel. Il m'a permis de mieux comprendre les enjeux liés à la maintenance d'un projet existant, à la qualité du code et à la sécurisation des évolutions. Il confirme mon intérêt pour des environnements techniques exigeants, où la rigueur, l'analyse et la fiabilité sont essentielles.
1. Gérer le patrimoine informatique
- 1.1. Recenser et identifier les ressources numériques J'ai analysé l'architecture technique du projet (Laravel, base de données, tests, pipeline CI/CD) afin d'identifier les différentes ressources numériques utilisées et repérer les éléments obsolètes ou à améliorer.
2. Répondre aux incidents et aux demandes d'assistance et d'évolution
- 2.1. Collecter, suivre et orienter des demandes J'ai analysé l'existant afin d'identifier les besoins d'évolution du projet Swantrad (réduction de la dette technique, amélioration des tests existants et de la qualité du code). J'ai ensuite suivi et orienté ces demandes en les priorisant et en proposant des solutions adaptées, notamment la refactorisation du code et l'amélioration des tests automatisés intégrés dans le pipeline CI/CD.
- 2.3. Traiter des demandes concernant les applications J'ai réalisé des corrections et des évolutions sur l'application Laravel afin d'améliorer la maintenabilité du code et de sécuriser les fonctionnalités existantes.
3. Développer la présence en ligne de l'organisation
- 3.3. Participer à l'évolution d'un site Web exploitant les données de l'organisation J'ai participé à la maintenance et à l'amélioration technique de l'application web Laravel de Swantrad, exploitant les données utilisateurs et métier, afin d'en renforcer la stabilité et la maintenabilité.
4. Travailler en mode projet
- 4.1. Analyser les objectifs et les modalités d'organisation d'un projet J'ai analysé les objectifs du stage et l'état initial du projet afin de définir des actions prioritaires compatibles avec une application déjà en production.
- 4.2. Planifier les activités J'ai établi un planning prévisionnel (diagramme de Gantt) structurant les différentes phases du stage, de l'analyse initiale à la fiabilisation des tests.
- 4.3. Évaluer les indicateurs de suivi d'un projet et analyser les écarts J'ai analysé les indicateurs de qualité fournis par SonarQube ainsi que les résultats du pipeline CI/CD afin d'évaluer l'évolution du projet et comprendre les écarts observés.
5. Mettre à disposition des utilisateurs un service informatique
- 5.1. Réaliser les tests d'intégration et d'acceptation d'un service J'ai conçu et exécuté des tests unitaires et d'intégration sur l'application Laravel, puis intégré leur validation automatique dans le pipeline CI/CD.
6. Organiser son développement professionnel
- 6.1. Mettre en place son environnement d'apprentissage personnel J'ai configuré et stabilisé un environnement de développement complet (Laravel, base de données, tests, CI/CD) afin de travailler efficacement sur le projet.