Langue: FR (Français)
- English
- Français (langue actuelle)
Enchanté, je suis
Marc Cerutti
Mes passions : créer des mondes virtuels, automatiser des processus, et ces gros boutons rouges qui cassent tout. C'est ce qui m'a amené à concevoir des systèmes complexes comme programmeur outils / moteur dans le jeu vidéo, puis à explorer la qualité logicielle comme ingénieur QA / testeur logiciel, avec un solide bagage technique.
Je suis toujours ravi d'échanger sur la création de jeux vidéo, la qualité logicielle ou les systèmes à casser intelligemment.
CV
| Profil | Français | Anglais | ||||
|---|---|---|---|---|---|---|
| Humain | ATS | Humain | ATS | |||
| Programmeur outils recommandé | FR | Humain PDF CV | ATS PDF CV | EN | Humain PDF CV | ATS PDF CV |
| Programmeur moteur recommandé | FR | Humain PDF CV | ATS PDF CV | EN | Humain PDF CV | ATS PDF CV |
| Ingénieur QA recommandé | FR | Humain PDF CV | ATS PDF CV | EN | Humain PDF CV | ATS PDF CV |
| Programmeur gameplay recommandé | FR | Humain PDF CV | ATS PDF CV | EN | Humain PDF CV | ATS PDF CV |
| Développeur logiciel recommandé | FR | Humain PDF CV | ATS PDF CV | EN | Humain PDF CV | ATS PDF CV |
FR: Français / EN: Anglais
Humain: Mise en page graphique / ATS: Lisible par les logiciels de recrutement
/ Carrière
Tous les diplômes et emplois que j'ai accumulés depuis le lycée
Ingénieur en test logiciel
Testeur logiciel · Ingénieur en automatisation des tests · Apprenti
M2I Formation & SOGETI (CAPGEMINI) — Mérignac
Testeur logiciel intervenant sur plusieurs projets de courte durée (2 à 3 semaines), en tests manuels et automatisés. Client : LBP, équipe CDS.
Ubisoft - Outils de tests automatisés
Programmeur moteur · Programmeur C++ · Programmeur C#
Ubisoft — Bordeaux
Programmation moteur axée sur le développement d'outils modulaires pour le moteur de jeu interne Anvil, en C++/C#, afin de capturer les performances finales des jeux avec des bots, sur plusieurs productions dont Assassin's Creed Shadows. Travail principal sur le pathfinding, le prétraitement des scénarios de test et les outils de rapport (heatmap, chronologie, vidéo, etc.).
Ubisoft - Équipe Anvil
Programmeur outils · Programmeur C++ · Programmeur C#
Ubisoft — Bordeaux
Développement de frameworks de tests automatisés et d'outils internes pour analyser la performance des jeux et optimiser les pipelines de production sur plusieurs plateformes.
Master Jeux et Médias Interactifs Numériques (JMIN)
Étudiant
Cnam / ENJMIN — Angoulême
Formation couvrant la conception de jeu, la programmation de jeu et de moteur, les fondamentaux UX, le pitching, la conception sonore et la création graphique, le tout pratiqué dans des équipes multidisciplinaires sur des projets concrets.
Sportagogie
Programmeur de jeux · Game designer · Pixel artist · Ingénieur R&D
Sport Management Pedagogy (S-M-P) — Angoulême
Recherche et développement d'un prototype de serious game pour enseigner la gestion financière sur le thème d'un club sportif. Analyse du jeu de société initial et des besoins du client, analyse de marché et faisabilité, prototypage. Le prototype final propose un gameplay inspiré du jeu Reigns jouant sur l'équilibre entre gestion des sponsors, popularité auprès des fans et mécaniques comptables.
Athena Volumetric Viewer
Programmeur généraliste · Programmeur full-stack
Thermo Fisher Scientific — Bordeaux
Amélioration de l'Athena Volumetric Viewer, un outil full-stack pour explorer de très grands ensembles de données scientifiques volumétriques. Ajout de fonctionnalités de mesure et de lisibilité sur le rendu de voxels, telles que la sélection d'orthoslice, les mesures de distance et d'angle et une légende de palette de couleurs, sur un frontend Angular et un backend OpenInventor C++ communiquant via Protobuf.
Master en informatique - Image et Son (IIS)
Étudiant
Université de Bordeaux — Bordeaux
Master d'informatique spécialité Image et Son : traitement d'images, réseaux de neurones (CNN), synthèse d'images (Monte-Carlo, anticrénelage, reconstruction 3D), interactions homme-machine (BCI, réalité virtuelle et hybride), traitement du son, IA symbolique et lecture d'articles scientifiques.
Visite virtuelle 3D
Programmeur Unity
SQLI — Pessac
Adaptation d'une visite virtuelle en réalité augmentée vers une expérience web dans le navigateur pendant le confinement lié au Covid-19. Visite des locaux sous Unity et WebGL présentant les projets de l'entreprise à des clients distants, avec modélisation 3D des bureaux, diapositives (images et présentations audio enregistrées), un système de configuration du plan des bureaux pour les mainteneurs non-développeurs, et une recherche sur l'immersion.
/ Projets
Un mélange de projets, des applications livrées aux game jams du week-end.

AI Career Assistant Wiki
mai 2026 - aujourd'hui
Projet personnel - Assistant de carrière IA construit sur une base de connaissances markdown
Base de connaissances de carrière IA : un wiki markdown en français interrogé par RAG local (qmd via MCP), source de vérité de ce portfolio. Avec des modules pour rédiger CV et lettres et analyser les offres.

Site portfolio et déploiement automatisé sur VPS
mai 2025 - aujourd'hui
Projet personnel - Site portfolio personnel et son déploiement VPS automatisé
Site portfolio piloté par les données avec Astro, Vue et TypeScript : carrière, projets et compétences filtrables. Déployé sur un VPS auto-hébergé par un playbook Ansible lancé via GitLab CI.



M2i Formation (2i Academy by M2i) - Étude de cas d'examen
Stratégie d'automatisation des tests d'une application bancaire avec RobotFramework et GitHub Actions. Socle d'automatisation QA d'entreprise : CI/CD, documentation ADR et gestion complète des données de test.


Notion System
oct. 2024 - févr. 2025
Projet personnel - fait pendant la formation Atomic Skills Academy (certification Notion Business Plus, 27 h) et étendu en système personnel
Système de gestion personnel clé en main sous Notion pour piloter projets de jeu, contenu et vie quotidienne. Bases liées de la vision aux tâches, workflow de sprint, suivi du temps et des KPI.

PNGTube Cavalry
nov. 2024 - févr. 2025
Projet personnel - Création d'avatar PNGTube pour une chaîne YouTube
Avatar vectoriel original pour une chaîne YouTube : 15 expressions dessinées sous Inkscape, animées sous Cavalry avec variantes de bouche et de clignement, puis configurées comme états dans veadotube mini.











Projet personnel - Extension Inkscape pour pipelines PNGTube
Extension Inkscape en Python qui exporte chaque couche d'un SVG complexe dans son propre fichier, conçue pour accélérer les mises à jour de modèles PNGTube (export parallèle, manifeste JSON).

Collab Maze
sept. 2022
Cnam Enjmin - Projet étudiant M2 JMIN
Jeu à deux joueurs créé en une semaine par 11 étudiants. L'un explore un labyrinthe de corde au toucher et au son, l'autre le guide au talkie-walkie et reconstitue une carte numérique. Unity, FMOD, Arduino.






Sport Management Pédagogie - Stage entre M1 et M2 (Cnam Enjmin)
Prototype de serious game enseignant la gestion financière via la simulation d'un club de football. Mécaniques inspirées de Reigns, scripts DSL ANTLR4, GitLab CI/CD, données de jeu Excel synchronisées.









Projet personnel - publié sur Unity Asset Store
Système d'événements personnalisés persistants pour Unity, publié sur l'Asset Store. Communication indépendante des scènes via le pattern Observer, avec fenêtre d'éditeur pour le debug et le suivi d'événements.



Carcasse City
févr. 2022 - mai 2022
Cnam Enjmin - Projet étudiant M1 JMIN
Générateur de cartes 2D procédurales sous Godot : génération en couches avec textures de bruit, lacs et rivières tracés par descente de gradient gloutonne, routes en L-système, le tout piloté par l'interface.







Halite AI
janv. 2022 - avr. 2022
Cnam Enjmin - Projet étudiant M1 JMIN (compétition IA)
Bot C++ pour Halite III dont les vaisseaux suivent des behavior trees JSON, en quatre variantes d'une même base de code. Outils pour compiler, exécuter et visualiser les arbres (doc PlantUML automatique).



























Level Design Doom
oct. 2021 - janv. 2022
Cnam Enjmin - Projet étudiant M1 JMIN (exercice de design de niveau Doom II)
Niveau Doom II solo inspiré d'Indiana Jones et la Dernière Croisade (Doom Builder, GZDoom) : énigmes autour du Graal, ambiance, équilibrage de la difficulté et scripts ACS (pièges, dialogues).


Hockey Pongscii
sept. 2021 - oct. 2021
Cnam Enjmin - Projet étudiant M1 JMIN
Hockey façon Pong pour deux joueurs sur un clavier, affiché dans une console Windows avec C++ et l'API Win32. Physique de collision sur mesure, buts, murs bonus et sons, réalisé en équipe de deux.





Eco+
oct. 2021
Cnam Enjmin - Projet étudiant M1 JMIN
ECO (Emotional Coaching Object) : sac de frappe expérimental à capteurs de pression textiles, lumière et musique, qui répond et coache le joueur émotionnellement. Prototype d'une semaine, Arduino et Teensy.



Université de Bordeaux - Projet étudiant avec Inria Potioc
Suivi d'objets AR sans marqueurs, expérimentant plusieurs algorithmes (détection RGB, YOLO, filtres de Kalman, etc.) : plugin C++/OpenCV chargé sous Unity, étendant le système AR spatial CARDS d'Inria Potioc.






Need A Needle (Candidature Cnam Enjmin)
janv. 2021 - mars 2021
Cnam Enjmin - Candidature Master JMIN (dossier créatif, admis)
Concept de jeu fondé sur la physique temps réel de fils, appuyé par des recherches techniques sur PBD/XPBD, softbodies, cordes et solveurs GPU, avec concept art et moodboard.


Jupiter Project
janv. 2020 - avr. 2020
Université de Bordeaux - M1 Informatique - Projet de programmation
Outil de génération procédurale de planètes en C++ et OpenGL, projet d'informatique de M1. Génération de biomes par bruit avec LibNoise, paramétrage utilisateur du terrain.




Puddy's World Adventure
nov. 2019
Fenrir Studio - Jamming Assembly
Jeu d'infiltration 2.5D réalisé en 48 h : incarnez un pudding dans un frigo, qui mange tout ce qu'il peut tout en évitant d'être capturé quand la porte s'ouvre.










Tisse Ta Toile
janv. 2019 - mai 2019
Bacchanight - Université de Bordeaux L3, semestre 6 (projet étudiant)
Stand de dessin collaboratif au musée des beaux-arts de Bordeaux : des tablettes Android (Java, application basée sur Markers) envoient des dessins modérés par TCP à un serveur d'affichage C# Windows Forms.







Robot Vision
sept. 2018 - avr. 2019
Université de Bordeaux - Licence Informatique (L3, semestres 5 et 6) - Projet technologique (Projet Tech)
Projet de stéréovision pour un robot : outils C++ Qt et OpenCV pour le calibrage stéréo et les cartes de profondeur (BM, SGBM), plus une simulation Unity du robot envoyant des images stéréo sur le réseau.




BUBBLE
sept. 2018 - déc. 2018
Bacchanight - Université de Bordeaux L3, semestre 5 (projet étudiant)
Projet de communication Bacchanight 2019 pour le Musée des Beaux-Arts de Bordeaux : spécification de BUBBLE, une application mobile où les étudiants ajoutent des bulles de BD comiques aux œuvres.






Labycard
nov. 2018
Game Jam+
Party game 2D au tour par tour pour 2 à 4 joueurs sur un clavier, en Python et PyGame sans moteur de jeu : posez des cartes d'effet comme pièges sur une carte aléatoire, puis foncez vers l'arrivée.






Mediatok
août 2018 - oct. 2018
Projet personnel - projet d'apprentissage en C++ et Qt : application de bureau pour gérer des listes personnelles de titres culturels
Application de bureau pour cataloguer anime, livres, films, jeux et musique dans des listes personnelles : tags, notes, filtres de recherche, import/export, thèmes et icône dans la zone de notification.

Université de Bordeaux - L2 Création personnelle (option informatique, cours de théâtre)
Jeu de poursuite lyrique et relaxant dans l'espace cosmique. Incarnez un aigle qui suit son pendant rouge qui lui échappe. Projet solo d'un mois explorant particules VFX, culling et object pooling.


CyberHunt
nov. 2017 - janv. 2018
Game Jam Label[i] - Lauréat (Prix Game Design)
Jeu multijoueur coopératif asymétrique sous Unity avec l'outil Photon : une héroïne et son fidèle compagnon affrontent un cyborg dans un combat de boss futuriste. Prix Game Design à la Game Jam Label[i] 2018.
/ Compétences
Mes compétences, organisées par domaine et niveau de maîtrise. Par défaut, seuls les niveaux Intermédiaire et supérieur sont affichés — utilisez le filtre pour la liste complète.
Langages de programmation
Moteurs de jeu
Graphisme et 3D
Audio et son
Interface (UI)
DevOps et build
QA et tests
Projet et collaboration
IA
E/S et matériel
Architecture du code
Fondamentaux de l'informatique
Compétences interpersonnelles
Développement de jeux
Langues
/ Qui suis-je ?
Qui suis-je, que fais-je, où vais-je : Gauguin a posé la question en premier, mais pas de peinture à l'huile ici.
? Qui suis-je en quelques mots ?
Créer, Coder et Casser : ce sont mes 3C. Je suis sincèrement passionné par la création — jeux, moteurs, programmes, outils —, par l'automatisation et par la remise en question des solutions. J'aime creuser des problèmes complexes, y répondre de façon créative, tester les solutions trouvées et échanger avec des personnes qui font de même.
? Comment j'aime travailler ?
J'aime faire partie des décisions de conception et travailler dans un périmètre bien défini que je peux comprendre et remettre en question si nécessaire. J'enquête sur les problèmes jusqu'à la cause racine et je partage mes conclusions, pour que nous puissions construire la solution ensemble. J'aime aussi les retours fréquents, positifs ou négatifs — c'est ce qui me pousse à progresser.
? Qu'est-ce qui me motive ?
Voir mes idées prendre vie dans un logiciel concret et interactif : un logiciel qui est utilisé, qui est mis à l'épreuve et qui offre la meilleure expérience possible. J'aime aussi les bonnes surprises qui viennent de mes collègues, la créativité qui émerge quand les gens sont véritablement inclus. Ce qui me dérange, en revanche, ce sont les décisions politiques et les compromis commerciaux qui dégradent discrètement l'expérience ou manquent de respect au travail des collaborateurs.
? Comment j'aborde un nouveau problème ?
D'abord, je m'assure que je comprends vraiment quel est le problème : je le questionne, et si c'est un bug, je le reproduis. Une fois qu'il est bien défini, je cherche s'il a déjà été résolu ailleurs, d'une autre manière. Ensuite, même avec plusieurs solutions sur la table, j'en choisis une en fonction des besoins actuels et des plans futurs — le résoudre de manière cohérente, dans les limites de budget, de temps, de ressources et de capacités humaines, c'est la partie que je trouve la plus exigeante.
? Quel rôle je prends naturellement dans une équipe ?
Je préfère les rôles de soutien : je démultiplie ce qu'une équipe fait déjà bien. Cela dit, je n'hésite pas à prendre l'initiative et à piloter des sujets, que ce soit en tant que développeur, testeur ou consultant technique — tant que l'équipe accepte quelqu'un qui aime automatiser les choses, reste curieux du processus global et participe aux discussions.












































































































