Compétences liées :

📫
Logo Image

La Plateforme Experts

Dans le cadre de mon stage, j'ai eu l'opportunité de travailler sur un projet innovant appelé La Plateforme Expert. Ce projet avait pour objectif de valider des relations de triplets dans huit sous-domaines juridiques pour améliorer le travail d'une intelligence artificielle (IA) alimentant un graphe de connaissances.

La Plateforme Expert est une application conçue pour valider les relations de triplets en utilisant une expertise linguistique. L'objectif était d'améliorer la précision d'une IA, en fournissant une plateforme dans laquelle les experts peuvent valider les relations de triplets, aidant ainsi l'IA à se perfectionner et à affiner ses connaissances.

Pour mener à bien ce projet, j'ai commencé par comprendre les besoins de la création d’une telle application, car son objectif était pour moi flou au vu de la complexité du projet général en lui-même. J’ai donc pu comprendre que mon application servira d’entonnoir à validation humaine. Après avoir validé les besoins, les premières fonctionnalités et leur design, ainsi que les technologies utilisées pour sa réalisation, qui était MERN, respectivement pour MongoDB, ExpressJS, React et NodeJS.

Passé un certain temps à me former sur MongoDB qui utilise le No SQL, c’est un système de base de données qui est dit "non relationnel", assez différent du SQL finalement et également à me former sur React, j'ai finalement conçu l'application en utilisant Angular, une technologie qui était fraichement choisie comme celle de l’entreprise, car ils venaient de créer un système SSO d’application frontend indépendantes appelé micro frontend.

Je me suis donc plié aux exigences de l’entreprise et ai commencé mon interface utilisateur en utilisant Angular. Une technologie que j’ai eue l’occasion de pratiqué durant mes études à la formation INTECH, en réalisant le projet BuyPath.

Pour être efficace avec mon maitre d’apprentissage, nous avons mis en place la méthodologie SCRUM qui permet de gérer au mieux l’évolution de l’application par fonctionnalité qui à la suite d’une partie de leur réalisation définissent une version de l’application.

Lors de l’utilisation de cette méthode de projet, vous réalisez une fonctionnalité, vous devez dans le cas de mon projet, et c’est ce qui entre autre nécessite l’utilisation d’une méthode agile de gestion de projet, effectué le développement du backend, autrement dit ce qui se passe au niveau de la gestion des données, au frontend qui est donc l’interface utilisateur.

J'ai eu l'opportunité d'interagir avec plusieurs membres de l'équipe de recherche ainsi que l’équipe de développement tout au long du projet. Leur expertise et leurs retours ont été essentiels pour réaliser le projet et assurer son intégration dans le système global.

Avant même de le voir plus tard dans mes études, j’ai appris à utiliser Docker au travers de GitLab, me permettant ainsi de déployer ma solution pour la faire tester à temps voulu de mes maitres de stage. L’apprentissage de cette technologie par le biais de ce projet fut un réel plus pour ma perspective en matière de réalisation de projet futur.

Après plusieurs mois de développement, j’ai réussi à faire une première version de l’application qui est capable de traiter plusieurs millions de triplets et ainsi alimenté avec un filtre le système de mon maitre d’apprentissage.

Au moment, où j’ai conclu mon stage, le projet n’en était qu’à son alpha. J’avais donc pris le soin de laissé, dans un dépôt partagé de l’entreprise, toute la documentation nécessaire à la reprise du projet. « Comment récupérer le projet », « Comment démarrer le projet », « Les technologies utilisées », « Les variables d’environnement », etc., toutes ces choses sont essentielles pour préparer un projet à sa passation.

En travaillant sur ce projet, j'ai eu l'occasion d'appliquer mes compétences en développement web et en interface utilisateur tout en apprenant une nouvelle architecture de la technologie Angular, le micro frontend. J'ai également appris l'importance de la collaboration au sein d'une équipe de développement et de la communication efficace pour réaliser un projet de cette envergure. Je suis fier de mon apport au projet, notamment pour la conception de l'interface utilisateur de l'application. Ce projet m'a offert de précieux enseignements, particulièrement l'importance de l'organisation et de l'efficacité dans le travail.

Bien que le projet ne soit pas terminé, les compétences et les connaissances acquises au cours de sa réalisation continuent de m'influencer dans ma carrière. J'ai acquis une meilleure compréhension de la conception d'interfaces utilisateur et de la collaboration avec une équipe de développement, des compétences que je vais certainement utiliser dans mes futurs projets.