About

PhD dropout turned Computer Graphics and Game Engine developer. I'm currently finishing a Master's in Game Development from ArtFX Montpellier. I specialize in Vulkan, C++, and systems programming more broadly, while constantly learning new tools, techniques and languages.

Currently, my obsessions are with data-oriented design and Jai. When I began programming 8 years ago I quickly found my stride in SOLID principles and OOP and thought I had reached the plateau. After entering the world of game engines, I quickly discovered how wrong I was. Mike Acton's talk followed by the late discovery of "handmade hero", Jonathan Blow streams and the many articles I could go over, reinvigorated my passion for coding and showed me how much more there is to learn in more simple, lightweight principles. I now strive to code small, "like a 15 year old programmer with 8 years of experience" as I remember someone putting it - to unlearn some of the rules I held dear. Learning Jai has been a good tool in this journey as it doesn't overbear with functionalities in the way C++ does, but this is an approach I can apply anywhere.

If you're here, you're hopefully an employer, so here is my pitch to you: I try to set myself apart by being a low-level programmer with deep understanding of hardware and memory, while also having a background as a game designer and artist. These qualities make me rather versatile and so, although I have specialties, I'm just as comfortable within gameplay and tools as I am writing shaders and engines.

Languages

C54.4%C++30.2%Jai7.6%Jupyter Notebook1.7%Objective-C1.4%CMake0.8%Makefile0.8%Java0.6%C#0.4%Python0.3%Perl0.3%TypeScript0.2%

384 contributions in the last year

Projects

glTF + PBR Renderer

C++VulkanGLSL
Surface-Stable Fractal Dithering

Surface-Stable Fractal Dithering

C++VulkanGLSL

Protoplanetary Cloud Visualizer

C++VulkanTooling

Chamoix Game Engine

C++VulkanECS

Indie Games

Unreal Engine 5Godot

Procedural Planets

UnityCompute shadersHLSL
Legacy Projects

Demoreel

Experience

Tools Programmer — OCA, Nice

Wrote a C++ & Vulkan 3D data visualization tool from scratch for researchers to explore protoplanetary cloud simulation data. Implemented a ray-marched view for real-time speculative renders.

C++ Vulkan
Embedded Software Developer — Bosch / Elsys Design, Valbonne

C/C++ Embedded Systems Developer as an Elsys consultant.

C C++ Embedded
PhD Student (6 months) — UoS / ARM, Southampton

Electronic Engineering thesis on placement algorithms for a C massively parallel graph-based computing system called POETS. Left after 6 months to pursue video game development.

C Research
Student Demonstrator — UoS, Southampton

Taught x86 Assembly under Computer Systems I and wrote unit tests for Computer Engineering I coursework.

x86 Assembly Teaching
Front-end Web Developer — UoS, Southampton

As a Research Assistant, transformed the team's financial model into an accessible online tool for retailers to make predictions with.

JavaScript TypeScript

Education

ArtFX, Montpellier — RNCP 7

Master in Game Programming. Advanced Computer Graphics, Compute Shaders, Game Engine Architecture, Procedural Generation.

University of Southampton — Bachelor

Bachelor of Software Engineering. Real-Time Computing and Embedded Systems, Advanced Software Modelling and Design. First Honours.

Lycée International de Valbonne — OIB

American Section, Scientific Stream specializing in Numerical Sciences with Music option. Highest Honours.

Hobbies

TREKKING When I'm not coding, I'm hiking. Here are some of my longest and most memorable adventures.
PHOTOGRAPHY Landscapes, portraits, and moments captured on film and digital.
PAINTING Paintings, sketches, and illustrations.