Resume

Employment History

September 2023 - currently

CFD software developer & architect

Airbus (Toulouse, France)

HPC industrial aerodynamic simulation

  • Streamline code review process by reducing 30 % of unnecessary code

  • Align C++ standards to ensure scalable and maintainable solutions

May 2019 - April 2023

Senior C++/CUDA developer

IMS Nanofabrication (Vienna, Austria)

HPC datapath of mask writer production tools

  • Maintain the C++17 driver of IMS's MBMW multi-beam mask writers

  • Parallelize its parser to increase CPU usage of the embedded cluster

  • Maximize Nvidia Tesla V100 GPU occupancy by using more GPU memory

  • Consolidate both InfiniBand and CUDA stacks via new tested adaptors

  • Hold design and architecture meetings

August 2016 - April 2019

HPC expert and solver architect

NEXTFLOW Software (now Siemens, Nantes, France)

Software architecture and development of innovative and massively parallel solvers

  • Restructure a procedural solver into an object oriented one

  • Standardise its generic components: I/O, HPC, maths

  • Improve performance of the computation kernel using new C++14 paradigms

  • Organise dialogue between framework team and solvers team

  • Carry the collaborative project PASC SPH-Exa on exascale computing

October 2014 - August 2016

Research engineer

CEA (French Atomic Energy and Alternative Energies Commission, Paris Region)

HPC simulation of tsunamis: benchmarks and uncertainties

  • In charge of the development of the C++/MPI tsunami simulation code (FDTD method) of the french tsunami warning centre (CENALT)

  • Validate the code through exprimental and analytical benchmarks

  • Couple the model with the uncertainty propagation software Promethee from IRSN and deploy it on a cluster

  • Create a Python/Matplotlib module to post-process data and visualize output maps

  • Analyse the sensitivity of the maximum water height of a tsunami to the parameters of the seismic source

October 2013 - December 2013 (3 months)

Engineer

CNRS, Institute of Physics (IPR, JRU UR1/CNRS 6251), Rennes (France), Discrete Media Department

October 2010 - September 2013 (3 ans)

PhD student

University of Rennes 1, Institute of Physics, Rennes, Discrete Media Department

Modeling acoustic properties of submerged granular media

  • Invent a code which simulate the propagation of acoustic waves in a submerged granular medium where both the coupling between wave and motion, and inter-granular contacts are taken into account

  • Model interacting grains using the Molecular Dynamics algorithm

  • Simulate the propagation of waves using a finite elements method and FreeFem++

  • Couple these two models using a new fictitious domains method

  • Develop a Python module for data post-processing using NumPy and Matplotlib

  • Check the code by comparing it with original analytical solutions and experimental measures made in an acoustic tank in collaboration with Géosciences Rennes (JRU UR1/CNRS 6118)

March - September 2010 (6 months)

Trainee

ARMINES, Geosciences Research Department of MINES ParisTech (Fontainebleau, France),
Geophysics team

3D seismic imaging of complex structures

  • Write a Fortran 90 program which simulates the propagation of acoustic waves through a 2D variable-density medium using the finite differences method

  • Optimal decomposition method with MPI to use it on a cluster

  • Optimize the kernel of the code in association with Intel®

  • Extent the code to 3D

  • Apply the code in the framework of a reverse time migration (RTM)

May - July 2009 (3 months)

Trainee

University of Rennes 1, Mathematics Research Institute (IRMAR, JRU UR1/CNRS 6625), Rennes (France)
Mechanics team

Ultrasonic data inversion for characterization of heterogeneous welds

  • Improve the Matlab code MINA from the Laboratory of Mechanics and Acoustics (LMA, ex-LCND, IRU CNRS 7051) which models the 2D structure and the orientation of grains in steel welds

  • Use the Athena code from EDF to simulate the propagation of waves through the structure

  • Compute and analyze cost functions related to the order of passes when welding

  • Create an inversion algorithm specific to this discrete parameter

Educational History

2010 - 2013 (3 years)

"Doctorat" in Physique (equivalent of PhD)

University of Rennes 1 (France)

  • Dynamics of a system of particles

  • Acoustic waves

  • Linear function spaces

  • Numerical linear algebra

  • Numerical methods to solve PDE

  • Finite elements method

  • Fictitious domain method

  • Molecular dynamics method

2008 - 2010 (2 years)

"Master" in Mechanics and Engineering Science
specialized in Modeling and Scientific Computing

University of Rennes 1 (France)

  • Advanced scientific programming

  • Parallel computation and optimization

  • Data structures

  • Numerical approximation

  • Numerical methods to solve ODE

  • Finite differences method

  • Inverse problems

  • Mechanics of elastic materials

  • Mechanics of thin bodies

  • Lasers

2005 - 2008 (3 ans)

"Licence" in Physics (equivalent of bachelor's degree)

University of Nantes (France)

  • Optics and electromagnetism

  • Classical thermodynamics

  • Quantum physics

  • Nuclear physics

  • Special relativity

  • Kinematics and statics

  • Dynamics of rigid bodies

  • Linear vibrations

  • Basic linear algebra

  • Real functions

2005

"Bac" (equivalent of A levels)

Alfred Kastler secondary school, La Roche sur Yon (France)

Additional Skills

Language

  • French (mother tongue)

  • English (fluent)

  • Japanese (lower beginner)

  • German (lower beginner)

Communication

  • Write scientific articles (english/french)

  • Article cover letters

  • Scientific oral communication (english/french)

  • Visual communication

I. T.

Programming languages:

  • C++ 17

  • C

  • Python

  • Fortran 2003

  • Bash

  • x86 assembly language

Parallel programming:

  • MPI-2

  • InfiniBand

  • OpenMP

  • CUDA

  • OpenCL

Compilers:

  • GCC

  • Intel® Compilers

Finite elements softwares:

  • FreeFEM++

  • Comsol

  • Ansys

  • Gate

Computation:

  • Matlab

  • Numpy

  • Matplotlib

  • Mathematica

Profiling

  • Valgrind

  • Intel® VTune

Web :

  • xHTML

  • CSS

Operating systems:

  • Linux

Office softwares:

  • MS Office

  • LaTeX

Revision control

  • GIT

  • Gerrit

Extra information

Elected Representative of non-permanents researchers in the Council of the Institute

Co-organizer of seminars and design and architecture meetings

Full Driver's licence (March 2005)