IA, automatisation et architecture d'engine
J'ai passé plus de 17 ans sur des jeux AAA chez Ubisoft, Eidos, Tencent et Bandai Namco. J'ai commencé technical designer et j'ai fini directeur technique senior. Je viens du bas niveau : C++, mémoire, optimisation GPU. Aujourd'hui, je m'en sers aussi pour monter des LLM en local (sans cloud) et des workflows d'agents qu'une équipe peut utiliser tous les jours. J'ai dirigé des équipes d'ingénieurs réparties sur plusieurs sites et plusieurs pays, et c'est quand une production bloque sur un problème technique costaud que je suis le plus utile. J'ai un TDAH et je suis HPI. Je pense en systèmes, et ça se voit dans ma façon de débugger.
Pragmatisme.
Quand j'embauche, je cherche du potentiel et un vrai fit technique, pas des mots-clés sur un CV. Pour les postes senior et lead, je veux des gens capables de concevoir une architecture qui tient en production. Pas des gens qui connaissent la théorie de la clean architecture sans s'être jamais battus avec le hardware. Mes entretiens techniques, c'est surtout de la résolution de problèmes en direct : je demande aux candidats de défendre un compromis difficile, par exemple choisir un algorithme plutôt qu'un autre pour gratter quelques millisecondes sur le render thread. La communication compte autant que le code. Un programmeur brillant qui ne sait pas documenter une décision ou bosser avec l'équipe artistique coûtera plus au projet qu'il ne lui rapportera.
Je ne tiens pas la main. J'essaie de rendre les gens autonomes en leur donnant une méthode. Je pousse les ingénieurs juniors et intermédiaires à comprendre ce qui se passe vraiment en mémoire et sur le GPU, au lieu de faire confiance à l'engine ou au framework qu'on leur a mis entre les mains. Je veux qu'ils voient venir les goulots d'étranglement et qu'ils m'apportent une solution, pas juste une question. Je les laisse se tromper là où l'erreur ne casse rien, et c'est moi qui reste responsable de la stabilité de l'infrastructure de l'équipe.
Je ne fais pas de micromanagement. Mon boulot, c'est de mettre en place l'environnement technique et l'organisation qui laissent les ingénieurs avancer. J'enlève les blocages qui ralentissent tout le monde, et je réponds de la solidité de l'architecture sur la durée.
Trois semaines avant d'envoyer un build de vertical slice aux investisseurs, un gros changement dans le pipeline de compression des textures a cassé notre gestion mémoire. Les kits de dev plantaient au hasard au bout d'une dizaine de minutes de jeu. L'équipe était sous pression, chacun poussait des fixes locaux qui se contredisaient, et la régression empirait.
J'ai gelé toutes les soumissions de code qui ne touchaient pas au bug. J'ai mis trois spécialistes systèmes dans une salle à part, avec un point toutes les heures où on ne parlait que de faits et de dumps mémoire. Le CTO voulait un coupable, alors j'ai pris le problème sur moi et j'ai tenu l'équipe à l'écart de la politique. En regardant comment les pages mémoire étaient allouées, j'ai trouvé dans le moteur de rendu un conflit de threads que personne n'avait vu. On avait un patch de contournement en 48 heures, et le build était stable à temps, sans faire tomber le reste du studio en crunch.
Projets : Assassin's Creed (III, Unity, Odyssey, Valhalla et DLC), Rainbow Six Siege (+ DLC), For Honor.
Projet : Deus Ex: Human Revolution.
Un exécutable de 38 Ko avec toute la météo et un cycle jour/nuit.
Des scènes photoréalistes en PBR, écrites en GLSL, 100 % procédurales.
Mon propre moteur de rendu, écrit en C# avec OpenTK.
Un setup LLM local, sans cloud, construit sur Llama 4, Docker et OpenWebUI, avec AutoGen par-dessus.
Premiers travaux sur un système de menus multiplateforme dans Unity.