Archives de
Author: Arthur Buren

Stage chez Quadient : Une Plongée dans l’Ingénierie Logicielle et les Microservices

Stage chez Quadient : Une Plongée dans l’Ingénierie Logicielle et les Microservices

Durant ma première année en informatique, j’ai eu l’opportunité d’effectuer un stage au sein de Quadient, une entreprise internationale spécialisée dans la gestion de lockers. Cette expérience m’a permis d’intégrer l’équipe Packcity Management Dashboard (PMD) Core, chargée du développement du backend de l’entreprise. Mon objectif principal : mettre à jour la librairie SocketCluster utilisée pour la communication entre les machines de type GEN3 et les serveurs.

Quadient : Un acteur clé des solutions automatisées

Quadient, anciennement Neopost, est une entreprise mondiale avec plus de 6000 employés à travers le monde. Spécialisée dans les solutions de gestion de lockers et la gestion de courrier à grande échelle, Quadient est un leader dans ce domaine. L’équipe PMD Core, au sein de laquelle j’ai travaillé, est responsable de l’API backend, une infrastructure clé qui permet la gestion des casiers automatisés à grande échelle. Cette API est développée en NodeJS et repose sur une architecture de microservices hébergée dans un environnement Kubernetes.

Mission : Mise à jour de la librairie SocketCluster

Ma mission était de mettre à jour la librairie SocketCluster dans le contexte des machines GEN3. Ces machines utilisent des websockets pour transmettre des informations en temps réel, comme l’état des colis, entre les machines et le backend. L’enjeu principal était de mettre en œuvre cette mise à jour pour améliorer la sécurité et profiter des nouvelles fonctionnalités de la librairie.

Cette tâche représentait un défi technique important. J’ai dû d’abord me familiariser avec l’architecture de microservices, un paradigme très différent du modèle monolithique que je connaissais. Ensuite, il a fallu maîtriser les subtilités de la programmation asynchrone en NodeJS et intégrer cette mise à jour dans un environnement de production déjà existant.

Défis rencontrés et solutions mises en place

L’un des principaux obstacles a été la prise en main du code préexistant, écrit par d’autres développeurs, ainsi que l’intégration dans une équipe de professionnels déjà bien rodés. La complexité des microservices et des tests automatisés (réalisés via Cucumber) a également nécessité une phase d’adaptation.

Pour relever ces défis, j’ai bénéficié de l’aide précieuse d’un architecte de chez Quadient, avec qui j’ai pu travailler sur la réécriture du code lié à l’ancienne version de SocketCluster. Mon travail consistait à effectuer cette mise à jour sans altérer les fonctionnalités existantes, tout en assurant que les tests automatisés continuent de passer avec succès.

Résultats et impact

Grâce à cette mise à jour, l’équipe a pu renforcer la sécurité des communications entre les machines GEN3 et les serveurs, tout en améliorant la scalabilité du système. Cette réussite sera un modèle pour la mise à jour des autres générations de machines à l’avenir.

Bilan personnel : Une expérience formatrice

Ce stage chez Quadient m’a permis de développer de nombreuses compétences, tant professionnelles que techniques. J’ai appris à travailler dans un environnement agile avec des méthodologies comme Scrum, et à manipuler des technologies comme websockets et NodeJS. Malgré la difficulté de travailler à distance, j’ai pu m’adapter et m’immerger dans un environnement de développement de haut niveau.

Cette expérience m’a également permis de réaliser à quel point le travail en équipe et la communication sont essentiels dans un projet d’envergure. Bien que ce stage ait mis en lumière certaines lacunes dans ma formation initiale, il m’a aussi donné les outils pour continuer à progresser et à approfondir mes connaissances.

Ce stage chez Quadient a été une étape clé dans mon parcours, me donnant non seulement un aperçu du monde professionnel, mais aussi des compétences techniques concrètes qui me seront utiles pour la suite de ma carrière.

Automatisation et Simplification des Textes Scientifiques : Mon Expérience au LIA

Automatisation et Simplification des Textes Scientifiques : Mon Expérience au LIA

Dans le cadre de ma deuxième année de licence en informatique et de Cursus Master Ingénierie (CMI) à l’Université d’Avignon, j’ai eu l’opportunité de réaliser un stage au Laboratoire Informatique d’Avignon (LIA) sous la tutelle de M. Stéphane Huet. Ce stage m’a permis de m’immerger dans le monde de la recherche, un domaine qui m’intéresse particulièrement, et de découvrir le projet SimpleText, une initiative européenne dédiée à la simplification automatique de textes scientifiques.

Contexte du stage

Ayant un fort intérêt pour le traitement automatique du langage, j’étais très motivé à l’idée de rejoindre un laboratoire de recherche, malgré quelques appréhensions liées à mon niveau d’étude en début de stage. Bien que le LIA prenne généralement des étudiants de troisième année, j’ai pu trouver ma place dans l’équipe et me lancer dans ce projet innovant. SimpleText vise à rendre les articles scientifiques plus accessibles au grand public, son but est de résumé de manière très simple des articles scientifique de haut niveau. Mon stage, bien que court, s’inscrivait dans la tâche 1 de ce projet, à savoir la sélection des passages pertinents à inclure dans les résumés simplifiés.

Le Projet SimpleText : Une ambition européenne

Le projet SimpleText est un vaste projet qui regroupe plusieurs pays européens, dont la France, l’Italie, et les Pays-Bas. Bien que la tâche principale était de sélectionner les passages, une partie de mon travail impliquait aussi une évaluation manuelle de la complexité des textes, avec l’aide, entre autre, d’un algorithme mathématique connu sous le nom de Flesh-Kincaid Grade Level (FKGL).

Complexité de lecture et évaluation manuelle

L’évaluation des passages reposait principalement sur l’algorithme FKGL, qui calcule la complexité de lecture d’un texte. Cependant, cet algorithme ne prend pas en compte la difficulté de compréhension des termes techniques. J’ai donc été amené à effectuer une évaluation manuelle en attribuant une note de 0 à 2 à chaque passage, en fonction de sa complexité. Par la suite, j’ai comparé mes résultats avec ceux des étudiants d’autres universités européennes, afin de mesurer les écarts et d’ajuster les scores moyens par établissement.

Les défis du traitement automatique

Un des défis majeurs de ce stage résidait dans les limites de l’algorithme FKGL. En effet, FKGL évalue principalement la lisibilité du texte, sans tenir compte de la technicité des termes employés. Cela crée des incohérences, par exemple entre des termes simples et des termes très techniques qui comptent le même nombre de syllabes. Nous avons standardisé la tokenisation à l’aide de la librairie NLTK, couplée au dictionnaire de syllabisation Cmudict, ce qui nous a permis de comparer les textes de manière plus cohérente.

Conclusion : une expérience enrichissante

Ce stage m’a beaucoup appris, non seulement sur le plan technique, mais aussi sur la façon de travailler dans un laboratoire de recherche. Bien que la durée limitée du stage ait restreint l’ampleur des missions que j’aurais pu accomplir, l’expérience m’a permis de contribuer à un projet européen d’envergure tout en apprenant les méthodologies de simplification de texte. J’espère pouvoir poursuivre ce type de projets dans mes futures expériences académiques et professionnelles.