Sébastien Marichal

Software programmer

C/C++, C#, Python

About me

Since I started studying at Epitech, I found in programming a hobby. My first program's purpose was to decide which episode of which serie I should watch after a school day. I began programming using the C language then I dug around to learn more about others: Lua, Java, Python, JavaScript and eventually C++. As I really liked C, I immediatly enjoyed playing with classes in C++.

I found in C++ the language I have to master. Since then, I mostly program with it. I first created a team management tool using the Qt Framework, then mostly worked with C++ for school projects. From basic features usage to network architecture implementation, I finished my scholarship with a strong knowledge in C++. In the meantime, through experience as a gamer, I got used to reflect on how I would implement the game mechanics I encounters.

I also got the chance to discover the game industry. It was a good opportunity for me, as most of the games I saw were made in C++. It inspired me to work on some game ideas, though it were more experimentations than actual games. My first one was a textual combat game made in C++. Even though my heart was taken by this language, I explored other ways to make games. I tried XNA using C#, Unity3D, WebGl in Dart / JavaScript, Java with Processing and recently Unreal Engine 4. All those projects lead me to something I really like to do: game engine designing.

After my studies, I initiated a project I had in my head for a long time: developing my own game engine. I know this is an ambitious project but I want to face all the challenges of game making, starting from scratch. I teamed up with a fellow programmer and together we designed the architecture of this project. Thanks to that, I got to create a binding for Lua in C++ and a binary file format. This is what makes the project exciting !

My passion for game programming does not prevent me from experimenting new technologies, usually by creating useful tools for my job, such as code generation tools. I recently worked on a web application which brings game server administration to a simple web interface. And from game projects to web applications, I work with enthusiasm !


EPITECH - European Institute of Technology
2009 - 2014
Lyon, France

Programming and software design.

Keimyung University
2012 - 2013
Deagu, South Korea

Video game, game mechanics, game design and level design.

Saint Michel High School
Annecy, France

Science high school diploma.


Academic Advisor
Sept. 2014 - present
EPITECH - Lyon, France


  • Object-Oriented, Game Programming & AI
  • Software Architecture & Abstraction
  • Algorithms, Unix & Posix Software Engineering & Development

Create partnership with Game Design schools (Aries & Bellecour Ecole d’Art both located in Lyon). Host the Ludum Dare & Global Game Jam 2015. Design new game development course.

China C++ Seminar
July 2015
Beijing Jiatong University - China

C++ coach during a 2 week long intensive C++ seminar.

Gameplay Developer
March 2014 - Aug. 2014
Eugen System - Paris, France

Refactoring system in the game engine.

Implementing new unit creation queue in Act of Aggression.

Implementing Unit Tests.

Working on a prototype of an unannounced game.

Wargame: Red Dragon

Wargame: Red Dragon is the last hightly strategic game from the Wargame series.

Act Of Aggression

Act Of Aggression is a classic strategic game bringing back good old RTS.

Full stack Developer
Sept. 2013 - Feb. 2014
Passmam - Lyon, France

Backend and frontend web development and database design.

Implementing a back office web site to manage all company services.

C# Developer
Dec. 2011 - Aug. 2012
Passmam - Lyon, France

Software development for windows 7 and windows 8.

Add remote control input in a TV software.

Work on several internal tools.

System Administrator
Jan. 2012 - Apr. 2012
ISEG - Lyon, France

Network and Window / MacOS administration.

Software deployment.

Teaching assistant
Jan. 2010 - Jun. 2011
EPITECH - Lyon, France

Coaching courses and labs for junior students. School promotion during events. System administration

Junior C++ Developer
Jul. 2010 - Dec. 2010
EPITECH - Lyon, France

Management application design using Qt framework. Teaching assistants tutoring.


Software development
Web Application
Html / Css
Game development
Unreal Engine 4
Unity 3D
Game Architecture
Network Architecture
Source control (Git/Svn)


Game Engine
C++ / Python / Lua

C++ Game engine based on the entity component system.

Tools are made in Python and Lua is for in game scripting.

Work on every part of this Game Engine:

  • Architecture design
  • Entity system implementation
  • Tools programmation
    • Editor
    • C++ Generation tool
DGC Format
C Library
C / C++

The dust generic container (DGC) is a binary file format create for DustEngine. Its purpose is to store every in-game assets. All assets and data are compressed using the zlib. It comes with a cross platform C library, a C++ wrapper, a Python module and a Node.js addon.

Work on the writing part (data to file) and the compression and decompression implementation and create all wrappers.

C++ Library
C++ / Lua

LuaDust is a Lua binding C++ library. This provide a C++ interface to bind C++ to Lua or Lua to C++.

C++ Library

MetaSerializer is a header only serializer library taking advantage of the C++ templates, allowing the serialization and the deserialization of C++ class by implementing only one method.

C# / XNA

KRisk is a game project carry during my third year in EPITECH. This project was made in C# with the XNA Framework. It bring the Risk board game to PC using the kinect controller.

The One Ring
Web App
Node.js / WebSocket

TOR is an experimental project with the goal to bring game server adminstration on a web interface. Today, this interface can start, stop, update a game server and get its status.

Escape the Black Hole
Java (Processing) / Android

Escape the Black Hole is an Android game made during my year in Keimyung University. This space game is about escaping the attraction of a black hole as long as you can with you space ship. To help you, bonuses appear give you more energy ou repair you.