Guillaume Gas

FRANCE · LYON 9 · guillaume@gas-ntic.fr

Ingénieur développeur C/C++ chez Stormshield, passionné par le fonctionnement/développement d'OS


Experiences

Ingénieur développeur C/C++

Stormshield

Développement du produit Stormshield Endpoint Security (SES) (C/C++, C#)

Octobre 2017 - Maintenant

Stage Développeur C#

Stormshield

Développement d'un outil de diagnostic en C#.

Avril 2017 - Octobre 2017 (6 mois)

Stage Développeur Python

Anybox SAS

Participation à la mise en place d'un solution basée sur Odoo pour de la vente de produits frais.

Juillet 2016 - Août 2016 (2 mois)

Stage Développeur module Odoo

Airways Planet

Développement d'un module Odoo (ex OpenERP) en Python 2.7 à destination de l'aéronautique.

Avril 2015 - Août 2015 (5 mois)

Stage Développeur PHP

ONEMA

Création d'une application de valorisation de données.

Avril 2014 - Août 2014 (5 mois)

Etudes

Université d'Orléans

Master en Informatique
Développement C/C++, programmation parallèle sur CPU (MPI) et carte graphique (CUDA), création de langage de programmation, développement android/ios, JEE.
2015 - 2017 (2 ans)

Université d'Orléans

Licence en Informatique
Approfondissement de notions théoriques telle qu'en complexité algorithmique.
2014 - 2015 (1 an)

IUT d'Orléans

DUT en Informatique
Approfondissement en C++, Java, PHP, découverte du Python, Visual Basic. Participation au concours 24h des IUT informatique, ainsi qu'au concours annuel de programmation de l'IUT d'Orléans.
2012 - 2014 (2 an)

Projets

LtMicros

Un petit système d'exploitation 32bits basé sur un micro-noyau (C/C++/ASM X86).

Le but est de créer un petit système d'exploitation simple, et basé sur un micro-noyau afin de mettre en évidence les avantages et inconvéniants par rapport à un noyau monolithique, ainsi que les difficultées qu'implique le développement de la casi totalité de l'OS en userland.

Le but est également de mettre en place un système permettant de détecter la mort prématurée d'un processus système pour le relancer automatiquement et ainsi avoir un système d'exploitation plus résistant aux bugs.

Pour plus de détail, rendez-vous sur le dépôt du projet : https://github.com/GuillaumeGas/LtMicros

LtDbg / LtDbgGui

Un debugger en ligne de commande & GUI pour le noyau d'LtMicros (C++/Qt).

Ce projet a pour but de développer un debugger pour le système d'exploitation LtMicros. Plus qu'un simple debugger permettant d'analyser son exécution, il devra permettre de récupérer des informations sur l'état du système, ses processus, ... de la même manière que WinDbg sous Windows.

Il permet actuellement de dialoguer avec le noyau via le port COM, met à disposition les commandes suivantes :

  • 'd' pour désassembler
  • 'r' pour afficher l'état des registres
  • 's' pour afficher la pile d'appels
  • 'p' pour l'exécution pas à pas
  • 'idt' pour afficher l'Interrupt Descriptor Table

Pour plus de détail, rendez-vous sur les dépôts du projet :

Nyx

Ebauche d'un langage de programmation interprété (C++).

Projet de langage interprété, pour le fun, avec une syntaxe proche de celle du C.

Lien vers le dépôt du projet : https://github.com/GuillaumeGas/Nyx

Chip8

Un emulateur Chip8 (C++).

Un émulateur de console Chip8 pour débuter par curiosité dans le domaine de l'émulation.

L'émulateur met à disposition un menu permettant de modifier des paramètres système et de choisir une ROM sur le disque. Un debugger permet également d'afficher les instructions, les registres et de poser des breakpoints.

Lien vers le dépôt : https://github.com/GuillaumeGas/Chip8


Compétences

Langages de programmation & Outils
Systèmes d'exploitation
Workflow
Langue

Intérêts

En plus d'être développeur, aussi bien au travail qu'à la maison, je suis un passionné de sport ! Je cours principalement, pratique le Krav Maga (sport de combat) et la plongée sous-marine.

Informatiquement parlant, c'est principalement le développement d'OS qui me passionne, mais je me suis également intéressé à la création de langages de programmation et à l'émulation de console de jeu.