016 Construire

Market Demand Pipeline

Un système ETL de production en cinq étapes, qui collecte, normalise et suit la demande du marché de l’emploi.

Projet
2025 à 2026
Stack
Python / Selenium / Docker / PostgreSQL

Le scraping est facile à démontrer et difficile à exploiter. Trois plateformes d’offres sont collectées, LinkedIn, FreeWork et Welcome to the Jungle, à travers cinq étages : collecte, nettoyage, enrichissement, contrôle, chargement. Les étages sont séparés pour qu’une défaillance de l’un ne corrompe pas les autres, chaque exécution est tracée, et les journaux sont structurés parce que la question posée à un pipeline à trois heures du matin est toujours quelle exécution et quelle étape.

La version 2.0.1 est passée en production en mars 2026 et tourne depuis, maintenue et étendue par d’autres. Passer la main sur un pipeline est l’épreuve qui dit si ses journaux ont été écrits pour quelqu’un d’autre.

Les cinq étages
  1. 01

    Collecte

    Selenium, trois plateformes

  2. 02

    Nettoyage

    dates, salaires, contrats, lieux

  3. 03

    Enrichissement

    technologies reconnues sur le référentiel

  4. 04

    Contrôle

    schéma, doublons, valeurs

  5. 05

    Chargement

    entrepôt, offres et sociétés

Cinq étages isolés plutôt qu’un script : une défaillance à la collecte ne corrompt pas l’entrepôt, et chaque exécution porte un identifiant qu’on retrouve dans les journaux d’un bout à l’autre. C’est ce qui permet de répondre, à trois heures du matin, à la seule question qui se pose : quelle exécution, quel étage.