Badge délivré à
Délivré le 08 déc. 2025 par
Lab4tech
info@lab4tech.ch
Association sans but lucratif, Lab4tech est une mesure active qui s'adresse aux demandeurs d'emploi du domaine de l'informatique spécialisée (IT/IS). Ses objectifs sont les suivants:
Améliorer l'employabilité des demandeurs d'emploi dans le domaine de l'informatique. Améliorer leur aptitude à l'emploi en développant leur professionnalisme. Développer l'esprit "Qualité" (décrivez ce que vous faites, faites que ce que vous décrivez). Pour atteindre ses objectifs, Lab4tech s'appuie sur deux piliers qui sont :
Le bilan complémentaire pour informaticien. Les stages pratiques (laboratoires de pratique).
Les critères de présentation d'un projet au Comité sont :
Titre du projet : AI Job Matcher
Description succincte :
Créer une solution automatisée permettant d’identifier rapidement les nouvelles opportunités et de mesurer leur pertinence pour différents profils.
Justification du projet :
Le marché de l’emploi génère chaque jour un grand volume d’offres, mais leur suivi manuel est chronophage et inefficace. Les professionnels comme les recruteurs, consultants RH ou personnes en recherche d’emploi doivent parcourir régulièrement plusieurs plateformes pour repérer les nouvelles annonces pertinentes. En parallèle, évaluer l’adéquation entre des dizaines de CV et des centaines d’offres demande un travail analytique lourd, souvent subjectif et difficile à automatiser sans outils adaptés. Ce projet répond à cette double problématique en créant une solution automatisée qui surveille en continu l’apparition de nouvelles offres et mesure instantanément leur pertinence par rapport à un ensemble de CV. L’opportunité est de transformer un processus manuel et répétitif en un flux intelligent, rapide et fiable, capable d’offrir une vision claire des meilleures correspondances chaque jour. Cela améliore la réactivité, la qualité du tri et la capacité à saisir les opportunités sans effort.
_ Objectifs :_
Phases de travail :
Product Vision > automatiser la récupération des offres + évaluer leur adéquation avec des CVs.
Product Backlog
Scraper (Jobup.ch)
analyser les structures des pages (news + détail pour chaque offre)
développer le scraper (sur la base du cours pratique de Python)
gérer les erreurs de scraping
filtrer les offres via certains critères
sauvegarder les offres correspondantes
produire un rapport clair d'extraction
JobMatcher (via l'IA suite aux problèmes constatés avec l'embedding)
afficher un interface utilisateur simple pour sélectionner les CVs et les Offres
charger les offres
charger les CVs
comparer chaque CV avec chacune des offres et récupérer un score de matching
stocker les résultats en mémoire pour tri ultérieur
produire un rapport final clair des comparaisons (scores les plus élevés en premier)
Méthodologie utilisée :
Agile (Scrum)
_Calendrier : _
Scrapper
Prototypage + Définition des besoins: du 20.10.2025 au 22.10.2025 (3 jours)
Analyse des pages Jobup.ch: du 23.10.2025 au 23.10.2025 (1 jour)
Développement du scraper Jobup.ch: du 24.10.2025 au 27.10.2025 (2 jours)
Ajout des filtres pour les offres: du 28.10.2025 au 29.10.2025 (2 jours)
Sauvegarde des offres filtrées (format MD + PDF): du 30.10.2025 au 30.10.2025 (1 jour)
Production du rapport de scraping: du 31.10.2025 au 31.10.2025 (1 jour)
AI Job Matcher
Charger les offres + génération JSON: du 03.11.2025 au 03.11.2025 (1 jour)
Charger les CVs + anonymisation + génération JSON: du 04.11.2025 au 10.11.2025 (5 jours)
Moteur de comparaison entre CV et Offre: du 11.11.2025 au 13.11.2025 (3 jours)
Ajout Interface Utilisateur (streamlit): du 14.11.2025 au 17.11.2025 (2 jours)
Production rapport final: du 18.11.2025 au 19.11.2025 (2 jours)
Documentations & Présentation finale: du 20.11.2025 au 21.11.2025 (2 jours)
Budget estimatif :
Le nombre global est de 5 semaines, soit 25 jours ouvrés ou 200 heures environ
Technologie pratiquées :
Python + librairies suivantes: streamlit / openai / python-dotenv / PyPDF2 / python-docx / pdf2image / pytesseract / Faker / gliner / selenium / webdriver-manager / beautifulsoup4 / scikit-learn / numpy / langdetect / reportlab / requests / lxml LLM: OpenAI (DEFAULT_MODEL = "gpt-4o-mini" / HEAVY_MODEL = "gpt-4o")