Write to me

Savoir-faire

Je conçois, livre et exploite des infrastructures et des logiciels, et j’enseigne à celles et ceux qui les construiront. Voici comment je travaille, avec quels outils, et ce que j’enseigne. Mes réalisations ont chacune leur page.

Voir mes réalisations

Ma démarche

I design how applications are built, delivered and run in production, for my own products as for those I join. My rule fits in one sentence: everything that runs should be described in code, rebuildable identically and restorable after an incident, and every claim about its state should be dated and verifiable.

Both crafts rest on the same standard. A course, like an infrastructure, should be possible to describe, reproduce and verify. My mathematical training still shapes the way I work: I map a system before I touch it, and I would rather persuade with a worked example.

Ma façon de travailler

Des affirmations qui se vérifient

Avant de toucher à un système, je le cartographie, et le registre de l’existant est produit par la machine plutôt qu’écrit à la main : chaque serveur, chaque service et chaque sauvegarde y figure avec son état et la preuve qui l’établit. Chaque intervention laisse une trace (le journal de l’opération, l’empreinte d’un fichier restauré, le résultat d’un test), rangée à côté du code qui l’a produite.

Le code qui touche à l’argent ou aux accès passe par une revue de sécurité outillée, et chaque constat est corrigé avec le test qui empêche son retour. Quand je ne sais pas encore une chose, je l’écris ainsi, avec ce qu’il faudrait pour l’établir.

L’IA à votre mesure

J’apporte aux entreprises et aux institutions des workflows agentiques et une IA taillés pour leurs besoins et leur échelle. Je repère avec vous les tâches où l’IA fait gagner du temps, je choisis les modèles et l’endroit où vos données restent, puis je construis des agents qui enchaînent ces tâches, avec une validation humaine à chaque étape décisive. Une petite équipe repart avec un outil simple qu’elle maîtrise, une grande organisation avec une chaîne outillée, tracée et documentée.

Open source

When an open-source tool gets in the way, I would rather fix it upstream than work around it. In Veyon, the classroom management software, I measured losslessly and then fixed tearing in the remote view, as well as the PipeWire VNC server under Wayland. These patches, written in C++ with Qt 6, were accepted by the project.

Voir les correctifs

Compétences et outils

Pour chaque domaine, les outils que j’emploie et la raison pour laquelle je les ai choisis.

Cloud et Infrastructure as Code

Tout ce qui tourne est décrit en code, pour pouvoir le reconstruire à l’identique, et chez le fournisseur qui convient au besoin plutôt qu’à l’habitude.

  • Google Cloud
  • AWS
  • Hetzner
  • OVH
  • Cloudflare
  • Pulumi
  • OpenTofu
  • Ansible

CI/CD et chaîne logicielle

Une modification n’atteint la production qu’après ses tests, dans une image signée dont on connaît le contenu, et la forge elle-même sait se restaurer.

  • GitLab CI
  • GitHub Actions
  • Docker
  • images signées
  • SBOM
  • attestations de provenance
  • BorgBackup

Systèmes et réseau

Un parc se décrit comme une infrastructure : la configuration s’applique d’elle-même, les accès passent par une identité unique et les secrets restent chiffrés.

  • Linux (Ubuntu)
  • bootc
  • Ansible
  • Keycloak
  • OIDC
  • SOPS
  • Tailscale

Backend

TypeScript de bout en bout et une architecture hexagonale : le domaine ne dépend d’aucun framework, si bien qu’on le teste et qu’on le fait évoluer sans tout réécrire.

  • TypeScript
  • NestJS
  • GraphQL
  • REST
  • PostgreSQL
  • Python
  • Solidity

Interfaces et moteur

Next.js et React pour les applications, et un moteur en Rust compilé en WebAssembly quand un jeu ou un outil doit tenir son temps de calcul sur l’appareil le plus modeste de la classe.

  • Next.js
  • React
  • Rust
  • WebAssembly
  • WebGL

IA agentique

J’intègre l’IA là où elle sert le métier, à l’échelle de l’organisation : le bon modèle pour chaque tâche, des agents qui agissent sous contrôle humain, et une trace de tout ce qu’ils font.

  • Claude
  • Codex
  • orchestration d’agents
  • validation humaine
  • traçabilité

Enseignement

Un cours se construit comme un logiciel : une même source donne le manuel, la plateforme, les exercices et leurs corrections, et chaque projet d’étudiant passe par une vraie CI.

  • Git
  • GitLab CI
  • Docker
  • Python
  • laboratoires en ligne

Enseigner

I teach very different audiences, from primary school to Master 2 and on to adult training. I design each course as a complete system, with objectives, one running case, reproducible activities, tooled assessment, and printed and digital materials drawn from a single source.

From Bachelor 3 to Master 2

At EPSI in Bordeaux I teach from Bachelor 3 to Master 2, and the school entrusted me with its modules after very positive feedback from students and the teaching team. In Master 2 I teach observability and the performance of distributed systems, cloud governance and architecture, building and deploying test environments and then running and analysing tests, and I supervise a professional simulation in which students lead a serverless project with agile methods, in a multicultural team. In the Master 1 cybersecurity programme I teach infrastructure security, identity and access management, and developing a secure cloud solution.

In Bachelor 3 I teach version control and continuous integration, virtualisation and containers with Docker, and blockchain development. Each of these subjects has its own course book and its own learning platform, which I wrote and run, and students work there on delivery chains identical to those I operate in production. I also sit on the juries of the professional simulations.

Training adults

For engineers I wrote a complete Docker course (Engine, Compose and Swarm) in twenty chapters, each with its runnable lab, its check and its cheat sheet, and I teach it remotely in two-hour sessions. I also guide adults changing careers towards digital skills.

In middle school, the sciences, English and geography

Edeys school, in Le Haillan, welcomes children with dyslexia, ADHD or autism, in small groups. I have taught there since 2025, pupils aged nine to fifteen, life and earth sciences, physics, chemistry, technology and mathematics, as well as English and geography. Moving from one subject to another with them calls for explicit teaching, short instructions and materials each of them can pick up alone. I speak to them with the exact vocabulary of the curriculum, never invented words, so that what they learn in class serves them everywhere else.

With each child and their family

With a child who has lost confidence, I start by listening, to the child and then to the family, and by finding what the child already does well, so that the first session ends on a success. I design my courses and my games so that a mistake costs nothing, so that a child dares to try again. In my games, a mistake brings a short explanation and a fresh try, and takes away nothing already achieved. Help comes in three levels (a reminder, an example, a guided solution), it is always free, and a pupil can stay guided for as long as they wish. In class I go over frequent mistakes without naming anyone, and the dyslexia-friendly layout changes only the typography, so a pupil with dyslexia works on the same exercise as everyone else.

From my console I see each pupil’s screen, and I come to help when they get stuck rather than at the end of the exercise. In English, each pupil records themselves speaking and receives a QR code that plays their own voice back, so they can hear their progress for themselves. I write my pupils’ report cards and school booklets myself, so that every family knows what their child has learnt and what is left to work on.

Write to me about your child

Engaging pupils through play

Play is my main lever for engagement, provided it serves real learning. I designed and played in class an algebra card game, Enquête dans le bois (a field guide in cards for life sciences), English duels and Mission Terminal, which teaches the shell through checked missions. Each game is first tried with the pupils, then corrected from what the game showed. For the workshop I lead at the ECHO days of EPSI’s network, I designed Constellation, a cooperative game in which every meeting between students from different schools moves the group forward.

Voir les jeux

Preparing for the classes préparatoires

For a final-year pupil preparing to enter the French classes préparatoires, I designed a complete collection of exercise books covering mathematics (advanced mathematics included), physics and chemistry, and numerical programming in Python. Each skill opens with a course reminder, a worked example and a pitfalls box, then offers exercises graded over four levels, with hints and detailed corrections. An essential route lets the pupil manage the workload, and every numeric answer is recomputed by an independent program before publication.

Voir les cahiers

Research questions in education

Ma pratique me pose des questions que j’aimerais instruire avec des équipes de recherche. Un jeu conçu pour une seule notion, puis révisé d’après la partie, change-t-il l’engagement et la mémorisation d’élèves dys, TDAH ou TSA ? Un poste qui en fait moins les rend-il plus autonomes ? Que change, pour apprendre, un retour immédiat sur chaque projet ? Et une IA conçue pour une école, à partir de ses propres règles, peut-elle aider les enseignants sans se substituer à leur jugement ? Aujourd’hui, je juge un jeu à l’engagement que j’observe en classe : la démarche ressemble à la design-based research, mais ce sont des observations de praticien, pas des mesures.

Today I judge a game by the engagement I observe in class, and I correct it for the next session. The approach is close to design-based research, but these are a practitioner’s observations, not measurements. That is precisely what I would like to equip with a researcher, and my research work at LIRIS taught me what an experimental protocol demands.

Aller plus loin