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
384 contributions in the last year
Projects
glTF + PBR Renderer
Surface-Stable Fractal Dithering
Protoplanetary Cloud Visualizer
Chamoix Game Engine
Indie Games
Procedural Planets
Legacy Projects
Demoreel
Experience
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/C++ Embedded Systems Developer as an Elsys consultant.
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.
Taught x86 Assembly under Computer Systems I and wrote unit tests for Computer Engineering I coursework.
As a Research Assistant, transformed the team's financial model into an accessible online tool for retailers to make predictions with.
Education
Master in Game Programming. Advanced Computer Graphics, Compute Shaders, Game Engine Architecture, Procedural Generation.
Bachelor of Software Engineering. Real-Time Computing and Embedded Systems, Advanced Software Modelling and Design. First Honours.
American Section, Scientific Stream specializing in Numerical Sciences with Music option. Highest Honours.