CV
Detailed background
Skills
- Languages & frameworks
- Python (FastAPI, Django, SQLAlchemy, Pytest, Poetry), PHP (Symfony, Doctrine), TypeScript/JavaScript (Angular, ExtJS), Go, C/C++ (Qt), Java (JSF), Unix shell scripting
- Databases
- PostgreSQL, MySQL, MariaDB, Oracle, SQLite, MongoDB
- Cloud, DevOps & tooling
- Google Cloud, Docker, Kubernetes, OpenShift, Git, Jenkins, GitHub Actions, GitLab CI, Jira, Confluence
- Methodologies
- Scrum, DevOps, TDD (Test Driven Development)
Professional experience
October 2026 – Present
Senior DevOps Engineer / Tech Lead
Bull — R&D Software HPC, Échirolles
Python, Go, Angular, FastAPI, SQLAlchemy, PostgreSQL, MongoDB, Pytest, Kubernetes, Google Cloud, Linux, Docker, Jenkins, GitHub Actions, Git
Bull is finally regaining its independence, the better to take on the challenge of French and European digital sovereignty. Me, I'm going the other way. Same mission, same team, same canteen, but on a permanent contract, with a payslip, paid time off and the right to grumble at the coffee machine.
February 2022 – September 2026
Tech Lead, Python
Bull (formerly Atos / formerly Eviden) — R&D Software HPC, Échirolles
Python, Go, Angular, FastAPI, SQLAlchemy, PostgreSQL, MongoDB, Pytest, Kubernetes, Google Cloud, Linux, Docker, Jenkins, GitHub Actions, Git
Tech lead of the team that builds, deploys and maintains the R&D HPC software factory: the machine that builds everyone else's software, a factory of factories, really. With no hierarchical position, you lead by example and persuasion rather than by org chart. Along the way I preached DevOps to the dev teams, and orchestrated the rewrite of a component, with its database migrated from MongoDB to PostgreSQL, where the data finally had to conform to a schema, like everybody else. All in English, with a team spread across four countries (France, Germany, Spain, Poland) and users all over the world.
October 2023 – May 2026
Co-founder
OBI Partner — Grenoble
Python, FastAPI, PostgreSQL, Pytest, Linux, Docker, GitLab CI, Git
Co-founding a technical consulting firm, run alongside my job at Bull: AI software building blocks, plus supervising and training apprentices and interns. Financial results: a flop. Human results: a crash-course MBA, major in "learning who your real friends are" 🧸
January 2021 – January 2022
Developer
Atos / IBM / Red Hat — IBM cooperation, Échirolles
Linux, Docker, Kubernetes, OpenShift, Bazel, Prow, Git, Go, Unix shell scripting
The mission: get Kata Containers running on ppc64le, an architecture most open source tools politely ignore. I set up the continuous integration for it, hunted down the bugs it uncovered, then dressed up the Sonobuoy and Istio build scripts so they'd welcome the newcomer, before sending it all upstream to the open source communities. In English, across Atos France, IBM India and IBM USA (Austin, TX): someone was always asleep.
July 2020 – January 2021
Developer
Atos / IBM — IBM cooperation, Échirolles
AIX, C, Python, Unix shell scripting
Performance hunter on IBM GLVM, a distributed storage system: I automated the performance tests, then tuned the system to make it go faster. In English, across Atos France and IBM India.
July 2017 – June 2020
Developer / Tech Lead
EDF Hydro — Hydraulic Engineering Center, Grenoble
PHP, Symfony, CSS, JavaScript, Bootstrap, ExtJS, Angular, D3, MySQL, PostgreSQL, Apache, Linux (CentOS), SVN, Git, GitLab, Jira, Confluence, PI Web API, Scrum
Three years serving EDF's Hydraulic IS web applications, the ones that manage the hydro fleet and talk to the outside world (UIs, REST web services, file exchanges). On the menu: a steady stream of new features, server administration, and a major technical milestone with the migration of a ten-year-old web application. All in Scrum, where I played deputy scrum master — the kind of role where you mostly shine when the incumbent is on holiday.
February 2016 – June 2017
Developer
Bull (Atos) / IBM — IBM cooperation, Échirolles
AIX, Linux, GNU Toolchain, IBM xlC, RPM packaging, Python
Porting open source software from Linux to AIX: gccgo, PHP, Python 2/3, Apache HTTPD, libtool, GNU Make, GTK+, Pango, Cairo, MongoDB… Every package had its own special way of refusing to compile. While I was at it, I tidied up the packaging process (automation, traceability, reproducibility, tests) and sent patches upstream to the open source communities. English-speaking team across Bull France, IBM India and IBM USA (Austin, TX).
Show earlier experience (2004–2016)
January 2016 – May 2016
Writer
JeuxVideo.com — Remote
A few months running the "Au Clair de la Tech" column on JeuxVideo.com, from home: proof that you can get paid to have opinions about technology.
April 2011 – February 2016
Developer
EDF (via Thales, then freelance from October 2012) — DPIH, Hydraulic Engineering Center, Grenoble
Python, PHP, JavaScript, Eclipse, Jenkins, Linux (CentOS), Apache, MySQL, Unix shell scripting, SVN, Trac
Five years of lovingly looking after a web application that models the supervision IS of hydroelectric infrastructure and generates the equipment configuration files. Between new features, user support, continuous integration tests and server administration (production, pre-production, integration, development: every floor of the rocket), boredom never stood a chance.
February 2014 – July 2014
Writer
LaRuche.com / PCWorld.fr — Remote
Five months answering "La Question Technique" ("The Technical Question") on LaRuche.com / PCWorld.fr: the column where you explain, with a smile, why the computer won't boot anymore.
July 2011 – August 2012
Product Owner
Thales — Security Solutions & Services Department, Montbonnot
Scrum, JavaScript, MySQL, PHP, SVN, Ubuntu
Product Owner of a software forge (built on the open source InDefero) developed in Scrum, with a dev team in India. Or how to go from the one who codes to the one who explains to the people who code what should be coded — in English, and with a time difference.
February 2011 – April 2011
Developer
ClearBUS (via Thales) — Grenoble
C++, Eclipse, Qt, SVN
Three months designing and integrating a new UI architecture into a desktop client for secure digital mail. The mail was secure; the interface, on the other hand, let itself be rebuilt from the ground up.
January 2011 – February 2011
Developer
Orange (via Thales) — Orange Labs, Meylan
Eclipse, Java, JavaScript, Android SDK, Mozilla SDK, XUL
Two months, two hats: industrializing an Android app (Melovibe) and maintaining a gesture-controlled Firefox extension. When they say things are moving, it's literal.
January 2010 – December 2010
Developer
Bull / IBM — IBM cooperation, Échirolles
Agile, AIX, CMVC, Linux, J2EE, JSF, Rational Application Developer, Selenium, XML
A tool to configure and monitor the security settings of AIX and Linux systems, integrated into IBM Systems Director: a padlock for machines, designed and built from A to Z. English-speaking team across Bull France and IBM USA.
February 2008 – December 2010
Developer
Bull / IBM — IBM cooperation, Échirolles
AIX, C, CMVC, J2EE, JSF, Rational Application Developer, Selenium, XML
A command-line system configuration tool for AIX, then its web front-end integrated into IBM Systems Director: command line for the purists, web interface for everyone else, and everybody's happy.
July 2006 – January 2008
Developer
Orange (via Thales) — SIR&S, Meylan
AIX, Apache, BEA Tuxedo, C++, CORBA, Java/J2EE, JOnAS, JSP, Linux (Red Hat), Oracle
Third-party application maintenance on three ADSL IS applications, two of them critical, high-availability ones (when they go down, subscribers notice). Meanwhile, design of evolution packages and, from December 2007, technical ownership of one application and a team of 4 to 8 developers: my crash course in cat herding.
February 2006 – June 2006
Final-year internship
Bull — Open Software R&D, Échirolles
IA-64 assembler, C, Linux
Final-year internship: developing a USB keyboard driver for KDB, the Linux kernel debugger, on Itanium (IA-64), kernels 2.6.12 to 2.6.17. The art of being able to type even when everything else has crashed, in IA-64 assembly and C.
July 2005 – August 2005
Engineering internship
INRIA — SARDES project, INRIA Rhône-Alpes, Montbonnot
C++, DirectShow, Eclipse, Java, JNI
Internship at INRIA: designing and implementing a multimedia proxy prototype, a sort of diplomat between hungry videos and modest clients. It adapts codec, compression and resolution of the streams in real time to each client's capabilities, using the Fractal component model.
July 2004
Manual-labor internship
Centre Hospitalier Spécialisé de Sarreguemines — IT department
A summer doing a bit of everything on the IT side: network administration, fleet maintenance, user support. The famous "have you tried turning it off and on again?" — already.
Education
2003 – 2006
Telecommunications engineering degree
Grenoble INP (ENSIMAG / ENSERG)
Distributed Applications and Networks track. Graduated July 2006 with honors ("mention Bien").
Show earlier education
2002 – 2003
Preparatory class, advanced mathematics (MP)
Lycée Kléber, Strasbourg
Computer science option (Caml). Admitted to the Mines-Télécom, Concours Communs Polytechniques and IIE entrance exams; passed the written stage of the Centrale Supélec entrance exam.
2001 – 2002
Preparatory class, mathematics (MPSI)
Lycée Kléber, Strasbourg
Computer science option (Caml).
June 2001
Scientific Baccalaureate
Life & earth sciences track, mathematics specialization
Awarded with honors ("mention Assez-Bien").
Additional training
- 2021 — Kubernetes Fundamentals (O'Reilly)
- 2021 — Docker Certified Associate (Udemy)
- 2021 — Fundamentals of Containers, Kubernetes, and Red Hat OpenShift (edX.org / Red Hat)
- 2019 — Angular (Kaizen Solutions)
- 2012 — Functional Programming Principles in Scala (Coursera.org / EPFL)
- 2011 — H0B0V electrical qualification (Socotec)
- 2010 — Java Server Faces 1.2 (Valtech Training)
- 2004 — Accounting (CNJE)
Languages
- English: fluent (TOEIC 880/990, December 2004)
- German: basic notions
- Italian: basic notions
- Spanish: basic notions
- Location
- Grenoble, France
- Driving licence
- Category B