FR EN
Ouvert aux opportunités & missions

> Ingénieur SRE / DevOps

De la conception à la mise en ligne, je m’occupe de tout.

SRE de métier, développeur full-stack de formation : je conçois votre application et l’infrastructure qui la rend accessible de façon fiable. Développement, tests, sécurité, mise en ligne, automatisation : la chaîne complète, prise en charge de bout en bout.

Maxence Labbé, Ingénieur SRE / DevOps
Maxence Labbé Bordeaux, FR · distanciel OK
Télécharger mon CV ↓
Plateforme bancaire opérée en production
Autonome · Résilient · Force de proposition
Formé tech (EPITECH) et gestion (IAE)
Bordeaux · Distanciel

// Ce que je fais

Quatre missions, un objectif : la fiabilité

01

Faire tourner

Vos applications restent en ligne, même quand un serveur tombe.

+ Détail technique − Masquer le détail

Orchestration de conteneurs Docker / Compose, Kubernetes, haute disponibilité.

02

Surveiller

Je détecte les problèmes avant vos utilisateurs.

+ Détail technique − Masquer le détail

Observabilité complète avec Grafana, Prometheus et Loki : métriques, logs, alertes calibrées.

03

Automatiser

Chaque mise à jour part en ligne toute seule, sans erreur humaine.

+ Détail technique − Masquer le détail

Pipelines GitLab CI, Ansible, Bash : du commit à la production, sans intervention.

04

Sécuriser

Vos mots de passe et clés d'accès ne traînent nulle part.

+ Détail technique − Masquer le détail

Centralisation des secrets, serveurs verrouillés de bout en bout, bonnes pratiques CI.

// Un exemple concret

Du code à la mise en ligne, sans intervention humaine

Ce qui se passe entre le moment où un développeur termine une modification et sa mise en ligne. Sur les plateformes que j'opère, ces étapes sont automatisées : moins d'erreurs, des mises à jour plus fréquentes, et un retour arrière possible en quelques secondes.

  1. Commit Le code est envoyé
  2. Tests Vérifications automatiques
  3. Build L'application est assemblée
  4. Sécurité Scan des vulnérabilités
  5. Déploiement Mise en ligne progressive
  6. En ligne Surveillé en continu

// Parcours

Expériences & formations

De la gestion d'entreprise au pilotage d'infrastructures de production.

Expériences

Kéria

keria.tech Sept 2023 – Aujourd'hui
CDI · SRE & DevOps ◦ Bordeaux

Responsable de l'infrastructure et des déploiements pour une plateforme bancaire et immobilière en production.

+ Détail technique − Masquer le détail
Orchestration : gestion de l'infrastructure de production conteneurisée via Docker.
Observabilité : monitoring complet avec Grafana et Prometheus (logs, métriques, alertes).
Sécurité & IaC : optimisation Ansible et centralisation des secrets avec Infisical.
CI/CD : conception et optimisation des pipelines GitLab CI.
DockerAnsibleGitLab CIGrafanaPrometheusInfisicalPostgreSQLMongoDBLinux

Lexo

lexo-ai.fr Sept 2025 – Juin 2026
Co-fondateur & CTO ◦ Sud-Ouest

Suite IA B2B souveraine dédiée aux professionnels du droit et de la finance.

+ Détail technique − Masquer le détail
Workflow documentaire : tri des e-mails, rédaction assistée, analyse de contrats (clauses à risque, échéances).
Architecture de A à Z : pipeline IA, infra souveraine européenne (ISO 27001, RGPD), chiffrement AES-256.
Recherche sémantique et chat juridique sourcé sur la jurisprudence.
Intégrations natives Gmail / Outlook, cloisonnement par client. SaaS B2B en secteur réglementé.
TypeScriptIA / RAGRecherche sémantiqueInfra souveraineAES-256Gmail / Outlook

Extencia

www.extencia.fr Avr 2023 – Sept 2023
Stage · Assistant Informatique ◦ Bordeaux

Développement d'outils internes et automatisation de processus pour les équipes métier.

+ Détail technique − Masquer le détail
Automatisation de tâches récurrentes via VBA / OLE sur la suite Office.
Conception de dashboards Power BI à partir de sources hétérogènes.
Intégration SharePoint pour centraliser l'accès aux données métier.
Excel / VBAPower BISharePoint

VetCare

Sept 2022 – Avr 2023
Co-fondateur · SRE & DevOps ◦ Bordeaux

Plateforme SaaS pour le secteur vétérinaire : conception, déploiement et exploitation.

+ Détail technique − Masquer le détail
Orchestration des services en production via Docker Compose.
Développement full-stack : front ReactJS, back Ruby, base MongoDB.
Mise en place et exploitation de l'infrastructure de bout en bout.
Docker ComposeReactJSRubyMongoDB

Groupe Rhinos

www.groupe-rhinos.com Sept 2021 – Déc 2021
Stage · Développement Full-Stack ◦ La Rochelle

Cybersécurité et outils de visualisation réseau.

+ Détail technique − Masquer le détail
Mise en place d'une carte interactive de cyberattaques en temps réel.
Déploiement d'environnements web via Docker-compose et Django.
Scripts de surveillance réseau en Python · Score Root Me : 1350.
PythonDjangoDocker-composeCybersécurité

Formations

2020 – 2025 · Bordeaux

Epitech

Master of Science · Architecte de Systèmes d'Information

Expertise Technologies de l'Information

Option Data et IA

Président de l'association étudiante
2018 – 2020 · Bordeaux

Pôle Universitaire des Sciences de Gestion

DUT GEA

Gestion des Entreprises et des Administrations

Option Gestion Comptable et Financière

Chargé de communication de l'association étudiante
2017 – 2018 · La Rochelle

Lycée René-Josué Valin

Baccalauréat Scientifique

Option Mathématiques

Langues

Français Natif
Anglais Intermédiaire · Technique
Espagnol Débutant

Mobilité

Permis B · véhiculé Déplacements clients & missions sur site
Permis côtier Navigation de plaisance

// Compétences

La stack du quotidien

Les outils que j'opère en production, ce qu'ils apportent, et ce que ça donne une fois assemblé sur un vrai projet.

Langages

→ Construire et scripter
  • TypeScript / JS
  • C
  • C++
  • Python
  • Bash
  • HTML
  • CSS

Infrastructure & Cloud

→ Héberger et orchestrer
  • Docker
  • Kubernetes
  • Linux
  • Traefik
  • Nginx
  • Scaleway
  • OVH
  • IONOS

Automatisation

→ Déployer sans erreur humaine
  • GitLab CI/CD
  • Ansible
  • Terraform
  • Cron

Full-stack

→ Concevoir l'application
  • ReactJS
  • NestJS
  • NextJS
  • Astro
  • Hooks
  • TanStack
  • Tailwind
  • FastAPI
  • RabbitMQ

IA

→ Intégrer l'intelligence
  • LLM
  • OCR
  • RAG
  • NER
  • On-premise
  • Harnais
  • Modèles
  • Gateway
  • Souveraineté
  • Frugale

Sécurité & Authentification

→ Penser sécurité d'abord
  • SOC
  • Audit
  • Security-first
  • SSO
  • JWT
  • OAuth 2.0
  • RBAC

Data & Stockage

→ Stocker et analyser
  • PostgreSQL
  • MongoDB
  • Redis
  • Storage S3
  • Power BI

Observabilité

→ Mesurer et comprendre
  • Grafana
  • OpenTelemetry
  • Prometheus
  • Loki
  • Promtail

Outils

→ Coder au quotidien
  • Antigravity
  • Cursor
  • Claude
  • Gemini
  • Git
  • Linear

En pratique

Ces outils, assemblés. Pour chaque sujet : le problème qu'il pose en production, l'approche que je retiens, puis les étapes concrètes. Cliquez pour dérouler.

Socle technique

01
Automatisation des déploiements
Pipeline GitLab CI qui teste, scanne, construit et déploie sans intervention manuelle.

Un déploiement fait à la main est un déploiement qu'on redoute, donc qu'on repousse. Il finit par partir un vendredi soir avec trois semaines de changements accumulés, et plus personne ne sait lequel a cassé la production.

Je monte une chaîne où la mise en production redevient un non-événement : un merge, un pipeline vert, c'est en ligne. L'image validée en staging est celle qui part, et le retour arrière est prêt avant qu'on en ait besoin.

Mise en oeuvre
  1. Découpage du pipeline en étapes courtes et lisibles : lint, tests unitaires et d'intégration, build de l'image, scan de vulnérabilités (Trivy) sur l'image finale, publication au registry.
  2. Environnements séparés et promotion explicite : l'image validée en staging est exactement celle qui part en production, jamais un nouveau build.
  3. Déploiement automatisé selon la cible, Ansible sur des VM, Helm ou kubectl sur un cluster, avec les secrets lus au moment de l'exécution depuis le coffre et jamais écrits dans le dépôt.
  4. Retour arrière préparé et testé : image précédente identifiée, procédure de bascule connue, et un pipeline qui échoue avant de casser plutôt qu'après.
  5. Runbook écrit pour l'équipe : comment lire un pipeline rouge, quoi relancer, qui prévenir.
02
Optimisation & scalabilité d'infrastructure
Goulets identifiés sous charge réelle, scaling piloté par la vraie métrique, facture redescendue.

Une infra qui rame et qui coûte cher a rarement un seul coupable. Le réflexe consiste à ajouter des machines, ce qui traite le symptôme au prix fort et masque le vrai goulet jusqu'au pic suivant.

Je mesure d'abord sous charge réaliste, puis je ne touche qu'à ce qui pèse vraiment. L'élasticité est ensuite branchée sur la métrique qui décrit la charge, et le dimensionnement redescend sur tout ce qui dormait.

Mise en oeuvre
  1. Cartographie des flux et instrumentation des points chauds, puis mise sous charge réaliste pour voir où le temps part réellement : base, réseau, sérialisation, attente en file.
  2. Correction des goulets par ordre d'impact : index manquants, requêtes N+1, appels synchrones à basculer en asynchrone, cache là où le calcul est stable.
  3. Autoscaling branché sur la métrique qui décrit vraiment la charge, la profondeur de la file RabbitMQ pour un pool de workers, et pas le CPU, qui monte trop tard et redescend trop tôt.
  4. Dimensionnement revu à la baisse sur ce qui dormait : requests et limits ajustées aux mesures, ressources orphelines supprimées, environnements hors production éteints la nuit.
  5. Durcissement au passage (surface exposée réduite, accès nominatifs, secrets sortis des variables en clair) et feuille de route priorisée impact / effort pour la suite.
03
Observabilité de bout en bout
Instrumentation OpenTelemetry, collecte centralisée, dashboards Grafana et alertes qui ne réveillent personne pour rien.

Un système qu'on ne mesure pas est un système dont on apprend la panne par ses utilisateurs. Et quand on finit par poser des sondes dans l'urgence, elles arrivent en ordre dispersé : chaque service son format, chaque équipe son outil, et personne ne sait relier une lenteur perçue à sa cause.

Je pose la chaîne complète, traces, métriques et logs, sur les services qui comptent, derrière un point de collecte unique qui garde les applications indépendantes du stockage. Le travail s'arrête quand un incident se voit sur un écran avant qu'un utilisateur n'écrive.

Mise en oeuvre
  1. Instrumentation des services à surveiller, API, workers, brokers RabbitMQ, hôtes Linux, avec les SDK OpenTelemetry côté applicatif et les exporters côté système.
  2. Collecteur OpenTelemetry déployé sur un hôte dédié : il reçoit traces, métriques et logs, les enrichit (service, environnement, version) et les route vers Prometheus et Loki, sans coupler les applications au backend de stockage.
  3. Grafana branché sur les deux sources, avec deux familles de dashboards : une vue métier (volumes traités, latence perçue, taux d'échec) et une vue développeur (par service : requêtes, erreurs, saturation, profondeur des files).
  4. Règles d'alerte sur les seuls points critiques, calibrées sur l'historique réel pour éviter la fatigue d'alerte, routées là où l'équipe est vraiment : webhook Discord ou Slack, mail, astreinte.
  5. Documentation : ce que raconte chaque dashboard, ce que veut dire chaque alerte, et le runbook de première réaction.
04
Conteneurisation & orchestration
Images reproductibles, orchestration Kubernetes, probes et ressources réglées sur des mesures.

« Ça marche sur ma machine » est le symptôme d'un environnement que personne n'a écrit. Tant qu'il vit dans la tête d'une personne et dans l'historique d'un serveur, chaque nouvelle machine et chaque nouvel arrivant relancent la même enquête.

Conteneuriser revient à écrire cet environnement une fois pour toutes, orchestrer à décider à l'avance de ce qui se passe quand une instance meurt à trois heures du matin. Je fais les deux, avec la bascule documentée.

Mise en oeuvre
  1. Dockerfiles multi-stage : la chaîne de build reste dans l'image intermédiaire, l'image finale ne contient que le runtime et l'artefact, exécutés par un utilisateur non-root.
  2. docker-compose pour le poste des développeurs et pour staging : la même topologie de services, base et broker inclus, remontable en une commande.
  3. Configuration sortie de l'image : variables d'environnement, secrets montés au démarrage, et des healthchecks qui répondent à la vraie question, celle de savoir si le service peut traiter une requête et pas seulement si le processus est vivant.
  4. Passage au cluster : manifests Kubernetes (Deployment, Service, Ingress) ou chart Helm si la configuration varie d'un environnement à l'autre, liveness et readiness distinctes, requests et limits calées sur les mesures, Ingress Traefik devant.
  5. Bascule documentée : ordre de démarrage, procédure de retour arrière, et ce qu'il faut surveiller pendant les premières heures.
05
Gestion des secrets
Coffre centralisé, rotation, injection en CI et au runtime, secrets sortis du dépôt.

Les secrets ne fuient presque jamais par une attaque sophistiquée. Ils fuient par un .env commité, un mot de passe collé dans un canal Slack, un ancien collègue parti depuis six mois qui a toujours ses accès.

Je referme ces chemins un par un. Les secrets sortent du dépôt et des images pour vivre dans un coffre, les services les lisent au démarrage, et révoquer un accès redevient l'affaire d'une minute.

Mise en oeuvre
  1. Inventaire de l'existant : ce qui traîne où, qui y a accès, ce qui a déjà été exposé dans l'historique Git, avec révocation immédiate de ce qui l'a été.
  2. Coffre centralisé (Infisical ou Vault) organisé par projet et par environnement, avec des droits par équipe plutôt qu'un accès unique partagé.
  3. Lecture au moment de l'exécution : le pipeline et les services interrogent le coffre au démarrage, plus aucun secret dans le dépôt, dans une image ou dans les variables du projet.
  4. Rotation mise en place sur ce qui compte, et procédure d'arrivée / départ écrite pour que révoquer un accès prenne une minute et pas une réunion.
06
Authentification & autorisation
OIDC, jetons courts, refresh rotatif, et droits vérifiés côté serveur ressource par ressource.

Une application en ligne sans barrière est une base de données publique avec une interface. Et une barrière posée uniquement dans le front donne le même résultat en donnant l'illusion inverse : il suffit d'appeler l'API directement pour passer à côté.

Je pose le contrôle là où il tient, sur le serveur, à chaque requête. Les identifiants passent par le fournisseur d'identité déjà en place, les sessions restent courtes et révocables, et chaque accès sensible laisse une trace.

Mise en oeuvre
  1. Comptes et cycle de vie : inscription, connexion, mot de passe oublié, vérification d'adresse, mots de passe hachés avec un algorithme à coût mémoire (Argon2, bcrypt), jamais chiffrés ni stockés en clair.
  2. Connexion via un fournisseur d'identité existant (Google, Microsoft) en OAuth 2.0 / OIDC, avec le compte local et le compte fédéré rattachés à la même identité.
  3. Sessions : jeton d'accès à durée courte, refresh rotatif et révocable, invalidation immédiate à la déconnexion et au changement de mot de passe.
  4. Autorisation par rôle et par ressource, vérifiée sur le serveur à chaque appel, puisque l'interface masque mais ne protège pas, avec journalisation des accès sensibles.
07
Bases de données robustes
Schéma pensé, migrations versionnées jouées en CI, sauvegardes dont la restauration est testée.

Une base montée à la va-vite tient jusqu'au jour où il faut la faire évoluer ou la restaurer. Les deux moments arrivent toujours, souvent le même mois, et c'est là qu'on découvre que la sauvegarde nocturne n'a jamais été relue.

Je remets de l'ordre dans le schéma, je rends les évolutions rejouables en versionnant les migrations, et je vérifie la sauvegarde en la restaurant pour de vrai.

Mise en oeuvre
  1. Choix du moteur à partir des accès réels (PostgreSQL, MySQL, MongoDB, Redis en complément), pas par habitude.
  2. Modélisation : contraintes d'intégrité posées dans la base plutôt que dans le code applicatif, index dérivés des requêtes réellement exécutées et vérifiés par plan d'exécution.
  3. Migrations versionnées dans le dépôt, réversibles, jouées automatiquement en CI sur une copie avant de l'être en production.
  4. Migration des données existantes, avec la bascule répétée à blanc avant la vraie.
  5. Sauvegardes automatiques avec restauration dans le temps (PITR), et surtout une restauration réellement rejouée, parce qu'une sauvegarde jamais restaurée n'est pas une sauvegarde.

Intelligence artificielle

08
Hébergement de modèles open-source
GPU dimensionné, modèles servis par vLLM ou Ollama, API privée, données qui ne sortent pas.

Dès que les volumes deviennent réguliers ou que les données sont sensibles, envoyer chaque requête chez un fournisseur externe devient coûteux et discutable. Le prix suit l'usage sans plafond, et les documents partent chez un tiers.

Je fais tourner un modèle ouvert sur une machine maîtrisée, dimensionnée honnêtement pour la charge réelle, derrière une API privée. Les données ne quittent pas le périmètre, l'ensemble est hébergeable en France, et le coût redevient prévisible.

Mise en oeuvre
  1. Dimensionnement à partir du modèle visé et de la charge attendue : VRAM nécessaire selon la quantization, débit en tokens par seconde, nombre de requêtes simultanées à tenir.
  2. Service du modèle par vLLM ou Ollama selon le besoin, débit et traitement par lots d'un côté, simplicité d'exploitation de l'autre, avec la quantization choisie pour le bon compromis qualité / mémoire.
  3. API privée exposée aux applications derrière authentification, au format OpenAI pour que le code applicatif reste portable d'un modèle à l'autre.
  4. Hébergement en France si la souveraineté des données est un critère, et supervision du GPU branchée sur la même stack Grafana que le reste de l'infra.
09
Intégration d'IA dans un produit
Appels serverless facturés au token, modèle proportionné à la tâche, coûts plafonnés et tracés.

Une fonctionnalité IA se juge sur ce qu'elle produit, pas sur la taille du modèle derrière. Passer systématiquement par le plus gros modèle disponible fait grimper la facture pour une qualité souvent identique, et sans jeu de test personne ne peut dire si un changement améliore quoi que ce soit.

Je découpe le besoin en tâches et j'affecte à chacune le plus petit modèle qui la tient. Les appels restent serverless tant que le volume ne justifie pas d'infrastructure, les dépenses sont plafonnées, et chaque changement se mesure sur des cas réels.

Mise en oeuvre
  1. Découpage du besoin en tâches, et choix d'un modèle par tâche : un petit modèle rapide pour classer ou extraire, un grand modèle seulement là où le raisonnement le justifie.
  2. Intégration serverless facturée à l'usage : aucune infrastructure dédiée à opérer tant que le volume ne le justifie pas.
  3. Garde-fous : sorties contraintes par schéma, longueur bornée, reprise sur erreur, et plafonds de dépense par clé et par période.
  4. Jeu d'évaluation constitué à partir des cas réels du produit et rejoué à chaque changement de modèle ou de prompt, pour que « ça marche mieux » soit une mesure et pas une impression.
  5. Consommation et coût suivis par fonctionnalité, remontés dans les mêmes dashboards que le reste.
10
Passerelle unifiée (gateway)
Une adresse unique devant tous les modèles : quotas par équipe, bascule et coûts ventilés.

À partir de deux fournisseurs, chaque application se met à porter ses propres clés, son propre format d'appel et sa propre gestion d'erreur. Changer de modèle demande alors un redéploiement, et personne ne sait quelle équipe consomme quoi.

Je ramène tout cela à un point unique. Les applications parlent un seul format, le routage vit dans la configuration, et chaque équipe reçoit sa clé, son quota et sa ligne de coût.

Mise en oeuvre
  1. Passerelle (LiteLLM ou équivalent) posée devant l'ensemble des modèles, ouverts et propriétaires, avec un format d'appel unique quel que soit le fournisseur derrière.
  2. Clés virtuelles par application et par équipe, assorties de quotas et de plafonds, pour qu'une clé qui s'emballe ne consomme plus le budget de tout le monde.
  3. Routage et bascule déclarés dans la configuration, modèle par défaut, repli en cas d'indisponibilité, répartition entre fournisseurs, sans toucher au code applicatif.
  4. Usages et coûts exportés vers Prometheus et lisibles dans Grafana, ventilés par clé, par modèle et par application.
11
Hébergement et traitement des données en France
Toute la chaîne chez des hébergeurs français, données qui ne quittent pas le territoire.

Une donnée confiée à un service américain reste soumise à un droit étranger, même stockée dans une région européenne. Et le sujet n'arrive jamais seul : il y a l'hébergement, mais aussi les sauvegardes, les logs, les outils de suivi et les modèles d'IA, qui partent souvent ailleurs sans que personne l'ait décidé.

Je monte la chaîne complète chez des hébergeurs français, Scaleway, OVH ou IONOS, et je vérifie que rien n'en sort par une porte de service. On sait alors où vit chaque donnée, qui peut y accéder, et on peut le prouver.

Mise en oeuvre
  1. Inventaire des flux : où arrivent les données, où elles sont stockées, où elles sont copiées, et quels services tiers les voient au passage (analytics, mails transactionnels, sauvegardes, supervision).
  2. Hébergement chez un fournisseur français, calcul, stockage objet et base de données compris, avec les régions explicitement fixées plutôt que laissées à leur valeur par défaut.
  3. Remplacement des services tiers qui exfiltrent : supervision auto-hébergée (Grafana, Loki, Prometheus), mesure d'audience sans transfert hors UE, envoi de mails par un prestataire européen.
  4. Modèles d'IA servis sur GPU en France dès que le traitement porte sur des données sensibles, plutôt que par une API située ailleurs.
  5. Chiffrement au repos et en transit, accès nominatifs et journalisés, et documentation de la localisation de chaque traitement, prête pour un audit.

Conception produit

12
Conception de site & applications
Cadrage, développement full-stack, et une chaîne de déploiement montée dès le premier jour.

Un produit livré sans sa chaîne de déploiement ni sa documentation n'est pas terminé : il est posé sur une machine. La personne qui reprend derrière repart de zéro, et la moindre correction commence par retrouver comment le tout a été mis en ligne.

Je construis le produit et sa chaîne en même temps. Le déploiement, l'observabilité et les sauvegardes existent avant la mise en ligne, et le code reste lisible pour l'équipe qui le reprendra.

Mise en oeuvre
  1. Cadrage : ce que le produit doit faire, dans quel ordre, et quels arbitrages techniques cela impose, écrits et argumentés avant la première ligne.
  2. Développement full-stack, front et back, avec le schéma de données posé tôt parce que c'est ce qui coûte le plus cher à changer ensuite.
  3. Infra, pipeline et déploiement montés dès la première semaine : on livre en continu depuis le début plutôt que de découvrir la production à la fin.
  4. Observabilité et sauvegardes en place avant la mise en ligne, pas après le premier incident.
  5. Décisions d'architecture consignées, dépôt lisible, et prise en main avec l'équipe qui reprend le projet.
13
Accompagnement MVP
Le périmètre minimum qui répond vraiment à la question, en ligne et instrumenté dès la v1.

Un MVP mal cadré devient un produit complet livré à moitié : trop long à construire pour apprendre vite, trop incomplet pour convaincre. Et sans rien mesurer une fois en ligne, le test ne tranche rien.

Je pars de l'hypothèse à valider et je coupe tout ce qui n'y répond pas. Le reste est écrit mais pas construit, la v1 sort avec sa télémétrie, et le bilan arrive avec des chiffres.

Mise en oeuvre
  1. Formulation de l'hypothèse à tester, et découpage du périmètre au strict nécessaire pour y répondre, le reste étant noté plutôt que construit.
  2. Choix techniques calibrés pour cette échelle : simples, mais sans impasse qui obligerait à tout réécrire si ça marche.
  3. MVP déployé et utilisable par de vrais utilisateurs, derrière un vrai nom de domaine, avec authentification si le contexte l'exige.
  4. Télémétrie d'usage posée dès la v1 : parcours suivis, abandons repérés, sans quoi le test ne dit rien.
  5. Bilan chiffré à la fin, et plan explicite : ce qu'on garde, ce qu'on jette, ce qu'on reconstruit proprement.

Pilotage & données

14
Dashboards & BI
Sources connectées, indicateurs définis avec le métier, rafraîchissement automatique et supervisé.

Un tableau de bord n'a de valeur que si quelqu'un change une décision en le regardant. La partie difficile n'est pas de tracer des courbes : c'est que deux services calculent le même indicateur de deux façons, et que personne ne sait laquelle fait foi.

Je fais définir chaque chiffre par ceux qui l'utilisent, puis j'écris cette définition à côté du chiffre. Les vues sont construites par usage, et le rafraîchissement est surveillé pour qu'un dashboard ne mente jamais en silence.

Mise en oeuvre
  1. Connexion aux sources telles qu'elles sont : base de production en lecture, exports, API, tableurs métier.
  2. Définition des indicateurs avec les personnes qui les utiliseront, le calcul exact, la période, les exclusions, puis ces définitions écrites à côté du chiffre.
  3. Construction des vues par usage : une vue de pilotage courte pour décider, des vues détaillées pour ceux qui creusent.
  4. Rafraîchissement planifié et supervisé, avec alerte si une source cesse d'alimenter, parce qu'un dashboard figé sur les données d'hier est pire qu'aucun dashboard.
  5. Accès par rôle, et prise en main de l'équipe pour qu'elle fasse évoluer les vues sans moi.
15
FinOps
Coûts cloud collectés, ventilés par service, suivis dans Grafana, alertés au dépassement.

Une facture cloud qui grimpe sans explication est presque toujours une facture qu'on ne sait pas ventiler. Tant que chaque euro n'est pas rattaché à un service, aucune optimisation ne peut être arbitrée et la discussion se termine sur des impressions.

J'étiquette les ressources pour rendre la ventilation possible, puis je remonte le coût dans les mêmes dashboards que la charge. Chaque optimisation devient comparable, et vérifiable sur la facture du mois suivant.

Mise en oeuvre
  1. Collecte des coûts par fournisseur et étiquetage systématique des ressources (projet, environnement, équipe), sans quoi aucune ventilation n'est possible.
  2. Dashboards de suivi dans Grafana, à côté des métriques techniques : le coût d'un service devient une métrique comme les autres, comparable à la charge qu'il sert.
  3. Analyse des postes principaux : ressources surdimensionnées au regard des mesures, environnements hors production allumés en permanence, stockage et sauvegardes jamais purgés, trafic sortant évitable.
  4. Optimisations appliquées puis vérifiées, avec l'effet mesuré sur la facture du mois suivant.
  5. Alertes de dépassement par périmètre, pour que la surprise arrive au moment où on peut encore agir plutôt qu'à la clôture.

Au-delà de la technique

Une façon de travailler qui compte autant que la technique, au quotidien.

Gestion des incidents

Quand ça casse en production, s'agiter n'a jamais rien réparé. J'isole, je rétablis le service, je documente, puis je reviens à froid sur la cause.

Analyse business

J'ai étudié la gestion avant la technique, et ça me sert tous les jours : un SLO, ce n'est pas qu'une courbe, c'est aussi des coûts et des clients qui attendent.

Curiosité technique

J'aime essayer les nouveaux outils, quitte à les casser sur mon labo perso. Comme ça, ce qui arrive en production, je l'ai déjà éprouvé ailleurs.

Rigueur et organisation

Je préfère une doc à jour et des tâches tracées à une bonne mémoire. Ça évite les mauvaises surprises, à moi comme à ceux qui reprennent derrière.

// Centres d'intérêt

En dehors du clavier

Ce qui occupe mes soirées et mes week-ends, loin de l'écran.

Sport

Musculation · Callisthénie · Course

Musculation, callisthénie et course à pied, plusieurs fois par semaine. C'est ce qui m'aide à décrocher et à garder un bon équilibre.

Finance & Économie

Marchés · Analyse · Investissement

Je suis les marchés et l'actualité économique de près, et je gère mes propres investissements. Un reste de ma formation en gestion, dont je ne me suis jamais lassé.

Bricolage & Robotique

ESP32 · Modélisation 3D · Bois

Cartes ESP32, modélisation 3D, travail du bois. Après des journées passées dans des systèmes abstraits, ça fait du bien de fabriquer des choses qu'on peut tenir dans la main.

Photographie

Voyage · Quotidien

En voyage comme dans la rue en bas de chez moi : j'aime chercher le bon cadre et la bonne lumière, sans plus de prétention que ça.

// Projets

Ce sur quoi je travaille

Projets clients en cours, expérimentations open-source et capacités prêtes à être mobilisées en mission.

LabbTech

labbtech.fr
Cabinet de conseil & conception

Mon cabinet indépendant de conseil et de conception. Un interlocuteur unique qui conçoit, code et opère, de la première ligne à la production.

Le socle technique (déploiements, infra, sécurité, données), une IA utile et frugale hébergeable en France, la conception de produits sur mesure, le pilotage par les chiffres, et la reprise de projets déjà commencés.

Autour de moi, un réseau de développeurs, designers et spécialistes que je mobilise selon le projet, mais vous ne gérez qu'un contact.

  • Applications sur mesure
  • Sites & SaaS
  • Infrastructure & Cloud
  • CI/CD & Automatisation
  • Observabilité
  • Sécurité
  • Hébergement en France
  • Conseil & audit
  • MVP & prototypes
P01 Mission

Gallisa

En développement

Application web mobile pour optimiser les dépistages en pharmacie.

  • NextJS
  • Médical
  • RAG
P02 Mission

Domaine du Marensin

Site vitrine · location

Conception d'un site vitrine pour la location d'une villa.

  • Site vitrine
  • Web design
  • Location
P03 Mission

Grecromavia

Aide à la décision · médical

Application qui évalue rapidement le risque immunologique lors d'une proposition de greffe.

  • Médical
  • Greffe
  • Immunologie
P04 Mission

VetCare

Carnet de santé animal

Carnets de santé dématérialisés pour un meilleur suivi de l'animal, entre vétérinaires et propriétaires.

  • Médical
  • Suivi
  • Fiabilité
P05 Mission

Analyseur de réseau

Audit

Outil Python d'analyse de ports ouverts et de détection de failles, pensé pour les audits rapides.

  • Python
  • Sécurité
  • Nmap
P06 Mission

Visualisateur de cyberattaques

Temps réel · replay

Visualisation en direct des cyberattaques, avec fonction de replay pour rejouer et analyser les incidents.

  • Python
  • Sécurité
  • Temps réel
  • Replay

// Contact

On en discute ?

Recruteur ou futur client : parlez-moi de votre besoin, on prend 30 minutes pour en discuter. Réponse sous 24-48 h ouvrées.