Expériences

Fullstack Web Developer à Figaro Classifieds

Développeur full-stack Go/Vue et DevOps chez Figaro Classifieds (2019-2021) : référent du backend B2B « account management », serveur SSO OpenID Connect (Ory Hydra) toujours en production, services géo et référentiels de données sur GCP.

Développeur Full-stack (Go / Vue) & DevOps · Figaro Classifiedsfévr. 2019 – juil. 2021

CV — vue complète

Figaro Classifieds, filiale du Groupe Figaro (~300 personnes), média et marketplace d'annonces classées pour l'Emploi, l'Immobilier et l'Éducation (marques Cadremploi, Keljob, Figaro Emploi, Explorimmo, CVaden…). Ma première mission professionnelle (2019-2021), démarrée au moment du basculement de l'équipe vers le langage Go.

le SSO tourne toujours en production
~5 ans
lignes de Go — référent du backend B2B
40 000
endpoints REST portés de bout en bout
86

Technique & responsabilité

  • Devenu référent et principal auteur du backend Go de la plateforme B2B « account management » de Figaro Classifieds — SSO d'entreprise et portefeuilles de crédits/prestations consommés par les produits recrutement du groupe.

    service Go d'environ 40 000 lignes · 86 endpoints REST · 13 tables Postgres, sur ~26 mois

    GoAPI RESTGinGORMPostgreSQLarchitecture backend
  • Mis en place le serveur OpenID Connect / OAuth2 (Ory Hydra) offrant le single sign-on d'entreprise aux clients RH des applications du groupe : flux login / consent / logout et gestion dynamique des clients OAuth2.

    toujours en production ~5 ans après — l'adresse du SSO répond (vérifiée le 2026-08-30 ; cvaden.com, cité auparavant, refuse désormais la connexion : HTTP 403)

    OpenID ConnectOAuth2Ory Hydrasingle sign-onidentité / IAMGo
  • Porté le domaine crédits / portefeuilles / contrats B2B (stratégies de consommation, débits, dettes, exports) sur une architecture Go orientée domaine et événementielle (Pub/Sub), avec cache Redis et tests d'acceptation BDD (Cucumber).

    domaine métier complet, testé de bout en bout (godog/Cucumber), qualité suivie (SonarCloud)

    GoPub/SubRedisevent-drivenBDDCucumberdomain-driven design
  • Lead full-stack seul d'un service de géolocalisation : l'API Go (indexation ElasticSearch geo_shape, ETL recensement INSEE + frontières GeoJSON), son back-office Vue, et son infrastructure Terraform/GCP.

    les trois couches (API + back-office + infra) portées par une seule personne

    GoVue / NuxtElasticSearchTerraformGoogle Cloudfull-stack
  • Co-piloté la réécriture v2 d'une API transverse de nomenclatures métier (taxonomies emploi partagées entre les marques) : indices ElasticSearch v2, cache, et client de génération d'identifiants transverse.

    API transverse consommée par plusieurs marques du groupe

    GoElasticSearchAPI transversemigration de données
  • Construit les indexeurs et ETL alimentant les référentiels entreprises/établissements (avec fusion des données Viadeo) et adresses, sur Postgres + ElasticSearch, orchestrés sur GCP (Cloud Functions / Scheduler).

    référentiels de données (SIRET, adresses) consommés par les autres services

    ETLGoPostgreSQLElasticSearchGoogle CloudCloud Functions
  • Contribué à établir le standard Infrastructure-as-Code de l'organisation (Terraform + Cloud Build sur GCP/GKE), réutilisé sur les microservices ; contributeur principal de l'infra du référentiel entreprise.

    patron IaC réutilisé sur plusieurs services (Terraform, Helm, Cloud Build, KMS)

    TerraformKubernetesHelmGoogle CloudCloud BuildInfrastructure as CodeKMS

Humain & managérial

  • Au départ d'un collègue clé, j'ai repris ses responsabilités — dont le serveur OpenID — et je suis devenu le référent de la plateforme : prendre le relais sans attendre qu'on me le demande.

    responsabilités reprises et élargies jusqu'au rôle de référent

    prise de responsabilitéautonomiefiabilitéownership
  • Fait monter en compétence un ancien développeur iOS vers le back-end / full-stack, et partagé mes méthodes avec l'équipe — transmettre autant que livrer.

    des coéquipiers qui montent en compétence à mon contact

    mentoratmontée en compétencessens du collectifpédagogie
    Mohamed Ben Aissa (page d'accueil) : « tu m'as beaucoup appris à améliorer mon travail »
  • En fin de mission, passage à temps partiel pour préparer l'équipe et transmettre — quitter proprement, sans point de rupture.

    départ anticipé et organisé : continuité assurée pour l'équipe

    fiabilitépassationtransfert de compétencesanticipation
    Anthony Ssi Yan Kai (page d'accueil) : « tu peux être fier de ce que tu laisses derrière toi »
  • À mes débuts, j'ai appris en écrivant les tests d'un collègue exigeant, puis fait mes premières code reviews avec des seniors qui, eux aussi, ré-apprenaient les nouveaux standards (Go, cloud). J'y ai gagné l'écoute, la pertinence des tests et le sens du collectif.

    une posture d'apprentissage humble, entre pairs, muée en autonomie

    humilitéécouterevue par les pairsapprentissagetravail d'équipe
    Nouhoum Traoré (page d'accueil) : « une progression plus que honorable » et « ton calme à toute épreuve »
  • Retenu par l'entreprise durant la crise Covid, alors que des missions de prestataires étaient interrompues — un signe concret de la confiance placée dans mon travail.

    mission maintenue et prolongée en pleine crise, jusqu'à mi-2021

    fiabilitéengagementcontinuité de mission

Approche

  • Livrer une fonctionnalité de bout en bout — du modèle de données à la logique métier, à l'API, au back-office, jusqu'au déploiement : la politique d'équipe que j'ai faite mienne.

    ownership complet : de la base de données à l'écran et à la production

    full-stackownershipautonomie
  • Réalisé, seul, l'application d'exemple d'intégration SSO/OAuth2 servant de référence aux applications clientes du fournisseur d'identité (connexion OIDC + consommation de crédits).

    intégration de référence fournie pour faciliter l'adoption par les autres équipes

    OAuth2OpenID Connectdeveloper experienceVue / Nuxt
  • Initié une bibliothèque Go partagée et versionnée (authentification service-à-service par jeton signé) — un réflexe de mutualisation dès mes débuts.

    bibliothèque interne publiée par tags semver

    Gobibliothèque partagéeauth service-à-service
  • Pragmatique et attentif au collectif : garder en tête le pourquoi business et les gens autour de la tech. Le babyfoot de l'étage n'était pas un gadget — il libérait le stress accumulé et ravivait les sourires.

    livrer ce qui sert vraiment ; soigner la vie d'équipe autant que le code

    pragmatismeorientation businessesprit d'équipequalité de vie au travail
    Laetitia (page d'accueil) : « un plaisir d'échanger avec toi »

Vue composée depuis une base de faits vérifiés — un même socle, relu selon l'angle du lecteur.