Professional Experience
> [2019 - Present] – Teaching Assistant – Université de Versailles Saint-Quentin (UVSQ) – France
As part of the High-Performance and Simulation (CHPS) Master Degree, the Advanced Architecture of Operating Systems (AISE) lectures attempt to teach, in a pratical way, how an operating system works, from the basics to more advanced concepts. Among the covererd subjects:
- Basics for Linux Operating Systems (processes, threads, I/O, network)
- Detailed analysis to compile, link and deal with ELF-based programs
- Memory Management, from hardware resources to user space
- Kernel (Customization, Scheduling, LKM, DKMS…)
- Projects (Shell, Memory Allocator, PMI Emulation) Beyond lectures, I’m also tutoring pluridisciplinary projects across the semester (e.g. distributed KVS over MPI).In that context, I share the lead of this course gathering around 45 hours of teaching a year.
> [2015 - Present] – HPC Junior Developer & Consultant – ParaTools SAS – France
ParaTools SAS provides a highly specialized consulting & expertise support relatively to High performance Computing solutions. Initially oriented to performance, thanks to the support of TAU tool, It also provides a large range of expertise when dealing with compilation and runtime supports. The French affiliate covers a larger area, mainly focused on developing inside runtimes (MPI, OpenMP). In that context, I contributed to multiple areas of interest and feed my knowledge among the following:
- GCC and the compilation chain (front-ends, GIMPLE, IR, plugins…)
- High-speed networks and driver optimizations for an MPI runtime (IB, Portals, SHMEM, OFI)
- Thread-level Storage mechanism and optimizations to create a custom user-level
thread support with adaptive hierarchical support, mimicking the same
capabilities as usually exposed with a regular
__threadkeyword. - Accelerators, mainly CUDA-capable devices.
- Broad knowledge of HPC-specific programming models. (MPI, OpenMP.) I have been periodically involved in the MPI Forum to release the MPI 4.0 standard.
- Low-level system engineering (ELF rewriting)
- Basic server administation (Gitlab, SSH, DHCP…)
> [2012 - 2015] – Work-Study program as part of Engineering School – ECE Paris – France
With the advent of new methods of learning, I got the opportounity to study through a Work-Study program. In that context, I joined the French leader organization in HPC research, known as the “Commissariat à l’Énergie Atomique et aux Énergies Alternatives” and been associated with the development of an MPI runtime called MPC. Among the goals I contributed to:
- Deployment of a standalone non-regression base for open-source applications, aware of HPC specifications and limitations.
- Study of several checkpoint-restart tools, to determine the best one to be used in place of the current method of checkpoint and restore applications inside the MPC framework.
- Development of a “test scheduler,” aware of HPC capacities and able to scale, allowing any CI system to optimize their time to result.
Education, Skills & Certifications
HPC: MPI, OpenMP, Threads, CUDA, Docker, Spack, SLURM, Portals4, OFI, Advanced Debugging
Languages: C/C++, Perl, Python3, Shell, LaTeX, R, Gnuplot, Web Tech., Java, Redis
Engineering: Git, SVN, CMake, Autotools, Gitlab, CI/CD, Jenkins, Scrum, ITIL
Education
- [09/2012 - 06/2015] Engineering School, through a Work-Study Program, ECE Paris, France
- [09/2010 - 06/2012] Bachelor’s Degree in Computer Science (two-year, one of which part of a Work-Study program), DUT Orsay, France
Certified Completed Online Courses:
- S190.1x: Scalable Machine Learning – UC BerkeleyX – 100%
- CS002x : Programming in Scratch – HarveyMuddX – 96%
- DEV203x : Introduction to Bootstrap – MicrosoftX – 78%
- LFS101x.2 : Introduction to Linux – LinxuFoundationX – 97%
Miscellaneous
Languages and personal skills
- French (native)
- English used on a daily basis (proficient for business purpose)
- Used to travel worldwide as part of my work
- Not arguing for things I do not perfectly master
Personal Beliefs
- A coin always has two sides ; do not make a single version become the whole story.
- Validation & Documentation are fundamental pieces when developing any software and should not be infringed, no matter what
- People using
Fix bugas a full commit message should be banned for life from using a keyboard.
Other Interests
- I (still) have a car driving license
- Deep interest into civil aviation
- Fan of Utah Jazz NBA team
- Favorite color:
#BF3030orrgb(191, 48, 48)orcmyk(0.00, 0.75, 0.75, 0.25) - Lucky number:
0x4or0b100 - Happily married with a wonderful wife