Blog
  • Login

  • Connexion
  • Inscription
  • Blog

  • Articles
  • en
  • de

đŸ§© Meetup AFUP Paris – Novembre 2025

le 28 novembre 2025

Validation des documents avec Symfony + IA & décryptage du test technique

Le 27 novembre 2025, l’Antenne AFUP Paris : PHP se rĂ©unissait chez Eleven Labs, au 102 Rue du Faubourg Saint-HonorĂ©, pour un nouveau meetup de la saison 2025-2026. Une soirĂ©e conviviale, technique et rĂ©solument tournĂ©e vers les enjeux actuels du dĂ©veloppement PHP : IA appliquĂ©e Ă  Symfony, qualitĂ©, recrutement
 et un bon moment de networking.

🏱 Un accueil chez Eleven Labs

Pour cette Ă©dition, Eleven Labs – ESN experte en projets web et mobiles sur mesure, prĂ©sente Ă  Paris, Nantes et MontrĂ©al – recevait la communautĂ© au 5ᔉ Ă©tage de ses locaux. Une atmosphĂšre idĂ©ale pour Ă©changer, apprendre et rencontrer d’autres passionnĂ©s du web.

đŸŽ€ Introduction & ActualitĂ©s AFUP – PrĂ©sentation d’ouverture du meetup

Comme Ă  chaque Ă©dition, l’équipe AFUP Paris a ouvert la soirĂ©e par un mot d’accueil, des annonces importantes et un tour d’horizon de l’actualitĂ© PHP et communautĂ©. Voici un rĂ©sumĂ© complet des points prĂ©sentĂ©s.

đŸ™‹â€â™€ïž đŸŽ™ïž Appel Ă  Speakers, Sponsors & Lieux d’accueil

L’AFUP Paris change rĂ©guliĂšrement de speakers, de locaux et mĂȘme parfois de partenaires pour la nourriture et les boissons aprĂšs les talks.

👉 Si vous souhaitez :

proposer un sujet,

accueillir un meetup dans vos locaux,

ou sponsoriser l’apĂ©ritif,

vous ĂȘtes les bienvenus ! Il suffit de nous contacter — nous planifions les meetups plusieurs mois Ă  l’avance.

🎓 Programme de Mentorat AFUP : deux volets

L’AFUP dispose de deux programmes de mentorat, tous deux bĂ©nĂ©voles et gratuits :

  1. Mentorat pour les speakers

Pour celles et ceux qui veulent :

apprendre à préparer un talk,

structurer une présentation,

ou gagner en aisance pour parler en public.

Ce programme est encore mĂ©connu, mais ouvert Ă  tous les niveaux. N’hĂ©sitez pas Ă  vous inscrire !

  1. Mentorat PHP

Pour :

les mentorés souhaitant progresser en PHP,

les mentors qui veulent transmettre leurs connaissances.

👉 Le lien d’inscription est disponible durant les meetups et sur nos rĂ©seaux.

đŸ—“ïž Les prochains meetups AFUP Paris

Les deux prochaines dates sont déjà fixées :

Mardi 17 dĂ©cembre – chez Acolia

Jeudi 8 janvier – chez Libid

Comme toujours, ces soirées sont gratuites et ouvertes à toutes et tous, dans la limite des places disponibles.

🔄 Tour d’horizon des meetups tech parisiens

L’AFUP profite de chaque Ă©dition pour relayer les Ă©vĂ©nements tech voisins. DĂ©but dĂ©cembre, plusieurs meetups auront lieu Ă  Paris autour de :

Ruby

Sécurité / AppSec

Angular

Et d’autres communautĂ©s locales

Une belle occasion d’explorer d’autres Ă©cosystĂšmes et d’élargir son rĂ©seau !

đŸ—žïž Actus AFUP National đŸ”č AFUP Day 2025 – Le 22 mai

L’évĂ©nement a Ă©tĂ© annoncĂ© le mois dernier. Il se dĂ©roulera dans 24 villes dont : Bordeaux, Lille, Lyon
 et, pour la premiĂšre fois, Paris !

👉 Les inscriptions sont ouvertes. Un QR code Ă©tait affichĂ© : il reste encore quelques places Ă  tarif “yeux fermĂ©s”.

🐘 Actus PHP PHP 8.5 est sorti !

La nouvelle version est disponible depuis quelques jours :

nouveau site officiel,

améliorations de performance,

nouvelles fonctionnalités bienvenues pour les développeurs.

Résultats du BaromÚtre des Salaires AFUP

Le baromĂštre annuel est paru :

tendances du marché,

fourchettes par rĂŽle,

évolution des salaires PHP en France.

TrÚs utile pour vous situer dans votre progression ou vos négociations.

PHPStan améliore massivement son support

Notamment pour :

les data providers,

d’autres constructions PHP historiquement mal prises en charge.

Une bonne nouvelle pour les projets exigeants en qualité et statique.

đŸ“± RĂ©seaux & communautĂ© LinkTree AFUP

Tous les liens utiles sont regroupés ici : LinkedIn, Twitter/X, Discord, Slack, Meetup


Questionnaire de feedback

Un QR code a été présenté pour recueillir vos retours sur la soirée. Ces feedbacks nous aident à améliorer les prochains meetups.

đŸŽ™ïž 1. Symfony + IA : validez vos documents avant mĂȘme de les ouvrir !

Intervenante : Marianne Joseph-Géhannin

La soirĂ©e a dĂ©marrĂ© fort avec une prĂ©sentation centrĂ©e sur la prĂ©-validation automatisĂ©e de documents grĂące au combo Symfony + OCR + LLM. Un cas d’usage trĂšs actuel pour les Ă©quipes produit et les plateformes qui manipulent des fichiers hĂ©tĂ©rogĂšnes au quotidien.

Pour cette premiĂšre prĂ©sentation de la soirĂ©e, Marianne a partagĂ© un retour d’expĂ©rience concret : comment combiner Symfony, l’OCR et les modĂšles de langage (LLM) pour automatiser la prĂ©-validation des documents administratifs — avant mĂȘme qu’un humain ne les consulte.

Un sujet pratique, issu d’un vrai besoin client, mĂȘlant IA, qualitĂ© et architecture.

đŸ‘€ Qui est Marianne ?

Marianne développe en PHP depuis 2011, avec un parcours qui a traversé Symfony depuis la version 1.4. Elle travaille chez Eleven Labs depuis 2020 et est actuellement en mission au Monde, notamment sur le framework Falcon.

đŸ§© Le problĂšme : des documents Ă  traiter
 en masse

Le cas d’usage prĂ©sentĂ© provient d’un appel d’offres pour une sociĂ©tĂ© gĂ©rant les voyages scolaires et sĂ©jours de vacances.

Chaque dossier nécessite de nombreux documents :

carte d’identitĂ©,

passeport,

certificat,

justificatifs divers


Pour les équipes opérationnelles, la vérification manuelle représente :

une charge chronophage,

un risque d’erreur,

un traitement Ă  faible valeur,

et une grosse variabilité dans la qualité des documents fournis.

🎯 Objectif du projet : Ă©liminer automatiquement les documents incorrects afin que les opĂ©rateurs ne traitent que les dossiers rĂ©ellement valides.

🧰 Les trois piliers techniques du projet

Marianne a construit sa solution avec trois briques principales :

  1. Symfony + Symfony-AI

La nouvelle initiative Symfony AI offre :

une intĂ©gration native des LLM dans l’écosystĂšme Symfony,

des clients pour les modĂšles de langage,

la vectorisation intégrée,

un “AI Platform” pour simplifier l’usage des providers.

Dans ce projet, Marianne a surtout utilisé :

l’intĂ©gration ChatGPT via Symfony-AI Platform,

une premiĂšre approche de vectorisation pour structurer des rĂšgles.

  1. L’OCR avec Tesseract

Les documents fournis sont souvent des images (scans, photos, PDF non structurĂ©s). L’OCR est donc essentiel pour extraire du texte exploitable.

Fonctionnement :

nettoyage (contraste, débruitage
),

détection des zones textuelles,

reconnaissance des caractĂšres,

production d'un texte brut.

Marianne utilise Tesseract via :

un client HTTP,

un Docker local,

une interface abstraite pour changer d’OCR si besoin.

  1. Un LLM pour interpréter et classifier les documents

Une fois le texte extrait, un LLM analyse :

de quel type de document il s’agit,

si les informations attendues sont présentes,

si le document est cohérent.

Marianne a testé plusieurs modÚles :

ChatGPT → fonctionnement parfait

LLama, Qwen
 via Ollama en local → limitations (temps de rĂ©ponse, qualitĂ©, contraintes matĂ©rielles)

Elle a constatĂ© : âžĄïž des rĂ©ponses imprĂ©visibles ou inexploitables en local âžĄïž un manque de puissance hardware âžĄïž des problĂšmes de timeout

Résultat : pour ce POC, ChatGPT a été le modÚle le plus fiable.

📝 Le prompt utilisĂ©

Le prompt est volontairement simple :

fournir la liste des types de documents possibles (CI, passeport, fiche de séjour
)

donner le texte extrait par l’OCR

demander une réponse strictement en JSON

Ce formalisme JSON garanti la possibilité de :

valider la structure,

typer les résultats,

enregistrer en base.

ChatGPT a systĂ©matiquement respectĂ© le format — ce qui n'a pas Ă©tĂ© le cas des modĂšles locaux.

🔄 Architecture du traitement (pipeline)

Voici le pipeline complet :

đŸ“€ Envoi du fichier via une commande Symfony (pas de formulaire pour le POC).

🧠 OCR Tesseract → extraction du texte.

💬 LLM → analyse, classification, validation.

đŸ—ƒïž Enregistrement en base du rĂ©sultat, pour exploitation par les opĂ©rateurs.

❌ Si un document ne correspond pas à son type attendu → rejet + message explicatif.

L’approche MVC s’appuie sur :

un DTO pour les données,

un handler,

des services spécifiques (OCR, IA, storage),

un design modulaire pour remplacer des composants selon les besoins.

đŸŽ„ DĂ©monstration

Marianne a montré plusieurs documents utilisés :

une carte d’identitĂ©,

un passeport,

une affiche “RĂ©publique Française” (pour tester la robustesse),

Et l’outil a su :

reconnaĂźtre le bon document dans les cas simples,

rejeter les faux positifs dans les cas ambigus.

đŸ§Ș Limitations & apprentissages ❗ Trouver le bon modĂšle IA

Les modÚles locaux (via Ollama) ont montré leurs limites : performance, incohérences, difficulté à respecter le format JSON.

ChatGPT s’est avĂ©rĂ© beaucoup plus fiable.

❗ GĂ©rer le timeout

Plusieurs essais pour stabiliser le temps de réponse.

Réglages de température, contraintes de sortie


Parfois nécessité de patcher directement dans le code du moteur local.

❗ La documentation

Symfony-AI → trùs bonne doc

OCR / Tesseract → plus spartiate

L’IA n’aide pas toujours à comprendre ce qu’on ne maütrise pas encore !

❗ RGPD et sĂ©curitĂ©

Impossible d’envoyer des documents sensibles Ă  un provider externe dans un contexte rĂ©el. D’oĂč l’intĂ©rĂȘt d’un traitement local — mais cela nĂ©cessite un matĂ©riel adaptĂ©.

🔎 Ce que ce POC dĂ©montre

✔ L’IA peut apporter une vraie valeur mĂ©tier dans la validation documentaire ✔ Le pipeline Symfony → OCR → LLM est parfaitement rĂ©alisable ✔ Les opĂ©rateurs gagnent du temps en se concentrant sur les vrais cas ✔ L’intĂ©gration Symfony-AI simplifie fortement ces processus

Mais aussi :

⚠ L’IA n’est pas magique : il faut Ă©valuer la pertinence, la charge de travail et les coĂ»ts. ⚠ Il ne faut pas sous-estimer l’effort nĂ©cessaire pour rendre un pipeline IA fiable et exploitable.

🎉 Conclusion

Ce projet illustre parfaitement comment Symfony + IA peuvent rĂ©soudre des problĂšmes trĂšs concrets, en automatisant des tĂąches jusque-lĂ  manuelles. Un usage pragmatique, mesurĂ© et intelligent de l’IA, loin du buzzword — et parfaitement applicable Ă  d’autres secteurs.

Merci Ă  Marianne pour ce partage riche et clair !

đŸŽ™ïž 2. Le test technique : utile, inutile ou contre-productif ?

Intervenante : Jeanne Londiche

Le second talk a plongé dans un sujet parfois sensible mais crucial : le test technique en recrutement. Utile ? Pas toujours. Mal calibré ? Souvent. Contre-productif ? Parfois.

💡 Ce qui a Ă©tĂ© explorĂ© :

Ce que le test technique mesure
 et ce qu’il ne mesure pas

Les biais les plus fréquents

L’impact sur le stress, la communication, la confiance

Comment un test révÚle la logique et la curiosité, pas seulement le code

Quelles alternatives envisager pour un recrutement plus juste et efficace

Échanges interactifs avec l’audience : retours, anecdotes, bonnes pratiques

Une intervention qui pose les bonnes questions et aide candidats comme recruteurs Ă  mieux utiliser (ou repenser) cet outil.

Parfait, on continue dans la mĂȘme veine que pour Symfony+IA 👍 Voici une réécriture propre, structurĂ©e et exploitable en article de blog pour la prĂ©sentation de Jeanne sur les tests techniques.

đŸŽ™ïž Talk : Le test technique – utile, inutile ou carrĂ©ment contre-productif ?

Par Jeanne Londiche

Pour le second talk de la soirĂ©e, Jeanne a proposĂ© une confĂ©rence interactive autour d’un sujet que beaucoup de dĂ©veloppeurs connaissent bien (et parfois redoutent) : 👉 le test technique dans les processus de recrutement.

Objectif :

  • faire le tour des diffĂ©rents types de tests,
  • partager des retours d’expĂ©rience concrets,
  • interroger ce qui est vraiment Ă©valuĂ©,
  • et questionner : “Est-ce que ça aide vraiment Ă  mieux recruter
 ou pas ?”

đŸ‘€ Qui est Jeanne ?

Jeanne se présente :

  • Elle anime un job board open source autour du recrutement (hĂ©bergĂ© sur GitHub).
  • Elle a grandi en Angleterre et y vit depuis 2013.
  • Elle est spĂ©cialisĂ©e en recrutement PHP depuis 2011.

Avec plus d’une dĂ©cennie d’expĂ©rience, elle a vu passer toutes sortes de tests techniques, cĂŽtĂ© candidats comme cĂŽtĂ© entreprises.

đŸ§Ș Les grandes familles de tests abordĂ©es

Jeanne structure sa présentation autour de plusieurs approches :

  • QCM / questionnaires en ligne
  • Test “maison” / applicatif (dĂ©velopper une petite appli)
  • Test d’algorithme
  • Test de refactoring
  • Pair-programming
  • Entretien technique “conversationnel”

La confĂ©rence se concentre surtout sur trois formats trĂšs frĂ©quents : 👉 le QCM, le test maison, et le refactoring, avec beaucoup d’exemples concrets.

1ïžâƒŁ Les QCM techniques : rapides mais trĂšs thĂ©oriques

Les QCM sont souvent proposĂ©s via des plateformes spĂ©cialisĂ©es. Jeanne interroge la salle : “Qui a dĂ©jĂ  passĂ© un QCM technique ? Est-ce que vous aimez ça ?” RĂ©ponse quasi unanime : non.

✅ Les points positifs :

  • Rapides Ă  corriger.
  • Utiles pour une premiĂšre vague de tri sur un grand volume de candidats.
  • Donnent un cĂŽtĂ© “objectivable” au process (scores, seuils, etc.).

❌ Les limites majeures :

  • TrĂšs thĂ©oriques, souvent dĂ©connectĂ©s du quotidien rĂ©el d’un dĂ©veloppeur.
  • DĂ©pendent Ă©normĂ©ment de la façon dont les questions sont rĂ©digĂ©es.
  • Peuvent exclure de bons profils qui n’ont pas la “bonne” dĂ©finition en tĂȘte, mais qui sauraient parfaitement rĂ©soudre le problĂšme en contexte rĂ©el.
  • Favorisent ceux qui rĂ©visent le “petit livre de recettes” plutĂŽt que ceux qui ont de la curiositĂ©, de la pratique et du bon sens.

En rĂ©sumĂ© : âžĄïž utile pour filtrer grossiĂšrement âžĄïž trĂšs insuffisant pour juger de la vraie valeur d’un·e dĂ©veloppeur·se.

2ïžâƒŁ Le test maison / applicatif : concret, mais souvent chronophage

Le test maison (ou applicatif) consiste Ă  dĂ©velopper une petite application ou fonctionnalitĂ© “comme en vrai” :

  • Ă  faire chez soi,
  • parfois avec un temps limite,
  • parfois “à rendre quand c’est prĂȘt”.

Dans la salle, plusieurs personnes témoignent : certains y ont passé 12 à 15 heures pour un seul test.

✅ Les points positifs :

  • Se rapproche davantage de la rĂ©alitĂ© du travail.

  • Permet de voir :

    • la structuration du code,
    • les choix d’architecture,
    • la gestion des tests,
    • la documentation,
    • voire un petit mail de synthĂšse (“avec plus de temps, j’aurais fait
”), qui est souvent aussi important que le code rendu.
  • Laisse une marge d’expression personnelle (choix techniques, organisation du projet, etc.).

❌ Les gros inconvĂ©nients :

  • Peut ĂȘtre trĂšs long : plusieurs soirĂ©es ou un week-end entier.

  • TrĂšs souvent non rĂ©munĂ©rĂ©, surtout pour des postes seniors.

  • Risque d’exploitation :

    des entreprises utilisent parfois ces tests pour faire avancer leur propre produit sans jamais embaucher.

  • Beaucoup de dĂ©veloppeurs expĂ©rimentĂ©s refusent dĂ©sormais ces tests :

    “C’est mon mĂ©tier, je suis payĂ© pour produire du code ; mon expĂ©rience et mon CV parlent pour moi.”

Et surtout : đŸŸ„ Le manque de feedback est systĂ©matiquement citĂ© comme un gros problĂšme. Les candidats passent des heures dessus, et reçoivent au mieux un :

“DĂ©solĂ©, nous ne poursuivons pas le process.” sans comprendre ce qui a coincĂ©.

💬 Feedback : indispensable
 et trop souvent absent

Jeanne insiste sur un point : 👉 un test technique sans feedback est une occasion manquĂ©e des deux cĂŽtĂ©s.

  • Pour le candidat :

    • c’est frustrant,
    • impossible de savoir ce qui Ă©tait attendu,
    • impossible de progresser.
  • Pour l’entreprise :

    • cela donne une mauvaise image du process,

    • les candidats en tirent souvent la conclusion :

      “Si mĂȘme le test est mal gĂ©rĂ©, ai-je vraiment envie de travailler avec eux ?”

La salle confirme : plusieurs personnes racontent avoir eu :

  • des remarques floues du style “pas assez poussĂ©â€ sans explication,
  • ou aucun retour du tout.

Jeanne rappelle aussi que le test technique teste autant la boĂźte que le candidat. Un process brouillon, opaque ou irrespectueux est un signal de non-match.

3ïžâƒŁ Test de refactoring : un format souvent plus rĂ©vĂ©lateur

Jeanne Ă©voque ensuite un format de test qu’elle apprĂ©cie particuliĂšrement : 👉 le test de refactoring, parfois prĂ©sentĂ© comme un kata.

Principe :

  • On fournit un code existant, parfois trĂšs “legacy” ou volontairement bancal.

  • On demande au candidat d’expliquer :

    • ce qu’il ferait,
    • par oĂč il commencerait,
    • quelles parties il refactoriserait et pourquoi,
    • comment il amĂ©liorerait la lisibilitĂ©, l’architecture, les tests.

Parfois, ce test se fait :

  • en pair-programming,
  • ou en entretien, sur la base d’un extrait de code projetĂ©.

✅ Pourquoi ce format peut ĂȘtre trĂšs intĂ©ressant :

  • Il se rapproche beaucoup de la rĂ©alitĂ© de nombreuses missions (on travaille rarement from scratch).

  • Il permet de voir :

    • la capacitĂ© analytique,
    • la comprĂ©hension des enjeux mĂ©tier,
    • la gestion du legacy,
    • la communication technique.
  • Il facilite un vrai Ă©change : on peut creuser les choix, discuter, challenger.

Mais lĂ  encore, la qualitĂ© de l’exercice dĂ©pend :

  • de la clartĂ© des consignes,
  • de la prĂ©sence ou non d’un dĂ©brief structurĂ© ensuite,
  • et de la façon dont le temps est gĂ©rĂ© (timer explicite ou implicite).

đŸ€– Et l’IA dans tout ça ?

La question est posĂ©e : “Est-ce que l’IA va tout changer pour les tests techniques ?”

Jeanne répond :

  • Pour l’instant, pas vraiment : les process ne sont pas encore massivement adaptĂ©s.

  • Mais comme l’IA modifie dĂ©jĂ  notre quotidien de dĂ©veloppeur, il serait logique qu’elle modifie aussi :

    • les formats de tests,
    • ce qu’on Ă©value (capacitĂ© Ă  utiliser des outils, pas seulement Ă  tout faire “à la main”).

On se dirige probablement vers des tests oĂč l’on apprĂ©cie autant :

  • la capacitĂ© Ă  modĂ©liser un problĂšme,
  • qu’à savoir s’appuyer intelligemment sur des outils (dont l’IA).

🧭 Ce que Jeanne invite à retenir

Il n’existe pas de test technique parfait. Mais on peut se poser les bonnes questions :

Pour les entreprises :

  • Que voulons-nous vraiment mesurer ?
  • Est-ce que ce test ressemble Ă  la rĂ©alitĂ© du poste ?
  • Respectons-nous le temps des candidat·es ?
  • Donne-t-on un feedback digne de ce nom ?

Pour les développeurs :

  • Qu’est-ce que ce test me dit de la culture de la boĂźte ?
  • Est-ce que je veux vraiment travailler dans un environnement qui recrute de cette maniĂšre ?
  • Est-ce que le process me donne de l’envie
 ou des signaux d’alarme ?

En fin de compte, le test technique devrait ĂȘtre :

un outil de rencontre, pas une épreuve de torture.

đŸ€ Un meetup ouvert Ă  tous

Comme toujours avec l’AFUP, la soirĂ©e Ă©tait ouverte Ă  toutes et tous : dĂ©butants, juniors, seniors, tech leads, indĂ©pendants ou curieux. Un objectif simple : partager des connaissances, dĂ©mystifier des concepts et crĂ©er du lien.

La participation Ă©tant gratuite mais les places limitĂ©es, l’évĂ©nement affichait une belle dynamique et un public engagĂ©.

🎯 Pourquoi ces sujets comptent ?

L’IA continue d'impacter fortement nos applications PHP et Symfony

La qualité documentaire et la validation sont des problématiques réelles en production

Le recrutement tech et ses méthodes évoluent, parfois trop lentement

Les meetups jouent un rĂŽle essentiel : casser les silos, partager l’expĂ©rience et rester Ă  jour

📅 Rendez-vous au prochain meetup

L’Antenne AFUP Paris continue son programme 2025-2026 avec de nouveaux sujets, de nouveaux speakers et toujours le mĂȘme esprit : partager, apprendre, faire avancer la communautĂ© PHP.

  • Plan du Site - Hello - Blog - Apps - Photos - Contact - - - - - Mentions lĂ©gales - Darkwood 2025, tous droits rĂ©servĂ©s