Plateforme d’agrégation et de recherche d’offres de stage intégrant une API d’offres d’emploi, une base de données et une couche de classification automatique basée sur le traitement du langage naturel.
JobAggregator est un projet réalisé dans le cadre de ma formation en informatique. L’objectif était de concevoir une solution permettant de centraliser des offres de stage provenant d’une source externe et de faciliter leur exploitation et leur recherche. Le projet combine plusieurs domaines que j’étudie en informatique : développement backend, bases de données, intégration d’API, conteneurisation et intelligence artificielle appliquée au traitement de données textuelles.
La recherche d’opportunités de stage peut nécessiter de consulter différentes offres et de traiter une quantité importante d’informations textuelles. Le projet cherchait donc à proposer une approche permettant de centraliser les offres récupérées depuis une API et de les exploiter de manière structurée. Une autre problématique concernait l’analyse et la classification automatique des contenus textuels des offres afin de pouvoir mieux organiser les données et faciliter leur exploitation.
La solution repose sur une architecture composée de plusieurs éléments : récupération des offres depuis l’API WeLoveDevs, traitement et stockage des données dans une base de données, puis utilisation de techniques de traitement automatique du langage naturel pour analyser les contenus textuels. Une approche basée sur TF-IDF et Naive Bayes a été utilisée pour la classification automatique. spaCy a également été utilisé dans le travail lié au NLP. Le projet est conteneurisé avec Docker afin de faciliter la mise en place de l’environnement et l’exécution des différents composants.
J’ai contribué à la conception du projet et notamment à la réflexion autour de la base de données, à l’intégration de l’API d’offres d’emploi et aux travaux liés à la classification automatique des offres. J’ai également participé au développement backend et à la mise en place de la partie liée au traitement des données textuelles. Le projet m’a permis de travailler à l’intersection du développement logiciel, des bases de données, de la data et de l’intelligence artificielle.