Curriculum Vitae

Thomas GIL

Architecte/développeur indépendant
[email protected]

Mon cursus en deux mots

Après avoir été consultant/formateur pendant deux ans chez Valtech (1999-2001), je me suis consacré presque exclusivement à l'activité de formation (Java, .NET, Web, XML) toujours chez Valtech puis dans sa filiale Valtech Training pendant quatre ans.

En parallèle de mon activité de formateur, j'ai suivi Sami Jaber dans la création du site www.dotnetguru.org pour lequel j'ai rédigé quelques articles et développé les PetShops, applications illustrant certaines architectures techniques.

Je me suis alors engagé un peu plus dans les logiciels libres et l'Open Source, en particulier dans le domaine de l'AOP (Aspect Oriented Programming). En collaboration avec Jean-Baptiste Evain, j'ai développé un tisseur d'aspects Open Source pour la plateforme .NET : AspectDNG.

En Septembre 2005, souhaitant consacrer davantage de temps au Libre et aux domaines techniques novateurs, j'ai changé de statut pour devenir indépendant.

Enfin en Octobre 2007, j'ai créé thomasgil.com pour mener des activités de formation et de réalisation de projets à distance.

Compétences techniques

Langages de programmation Java, C#, C, Assembleur, C++, Rust, Go, D, XSLT, PHP, JavaScript, Ruby, Python...
Plateformes CUDA, Java EE, .NET
Conception Conception Orientée Objet, Design Patterns, Conception Orientée Aspects
Systèmes d'exploitation Windows, GNU/Linux, MacOS X

DotNetGuru

Co-auteur du site www.dotnetguru.org, j'ai rédigé quelques articles techniques tels que:

D'autre part, j'ai eu la chance de participer une fois par an au Symposium DotNetGuru, un séminaire d'une journée faisant intervenir sur des sujets pointus plusieurs experts techniques tels que Jean-Baptiste Evain, Eric Groise, Sébastien Ros, Julien Brunet, Didier Girard ou Jean-Louis Bénard.

Livre

Un article un peu plus conséquent que les autres... J'ai rédigé un livre électronique intitulé Conception Orientée Aspect, en vente en ligne sur www.dotnetguru.org au format électronique et papier. Après un an de vente en ligne, j'ai pris la décision de rendre ce livre gratuit et librement téléchargeable ici.

Ce livre était la suite logique de mes travaux sur AspectDNG et m'a permis de faire le point sur l'AOP/AOD et son impact sur la Conception Orientée Objet. La rédaction d'un ouvrage de cette taille était une première pour moi et m'a beaucoup apporté en termes de structuration des idées et de méthodologie de travail.

Projets

Date Projet Description Technologies Rôle
2017- FirmFunding Architecture, développement et déploiement d'une place de marché de placements privés Java, JavaScript, Vue.js, Svelte, Cloud, Serverless CTO
2016 Mineurs d'altcoins Réimplémentation sur CPU et GPU de quelques algorithmes: Lyra2rev2, Keccak, Equihash... C++, CUDA, SSE, AVX Développeur
2016 Naja Framework de réplication d'état d'un graphe d'objets Java, C++, JDO, JCache, JGroups, ASM Développeur
2015 Compresseur Participation au concours de compression "Hutter Prize" C++ Développeur
2015 Désérialiseur C++ Outil C++ de désérialisation de flux d'objets Java C++, Java Développeur
2015 Naja Framework de réplication d'état d'un graphe d'objets Java, C++, JDO, JCache, JGroups, ASM Développeur
2014 Transpiler UnityScript Traduction automatique de code source UnityScript en C# C# Développeur
2014 Naja Framework de réplication d'état d'un graphe d'objets Java, C++, JDO, JCache, JGroups, ASM Développeur
2013 Naja Framework de réplication d'état d'un graphe d'objets Java, C++, JDO, JCache, JGroups Développeur
2012 LExpress Application IOS de lecture de news et d'articles ObjectiveC Développeur
2011 Transformer 2 Logiciel de transformation de formats de fichiers ferroviaires et de chargement en base de données C, Oracle Concepteur, développeur
2010 Cv Application Flex / Java de gestion de CV en ligne Spring, JPA, Hibernate Mise en place de l'infrastructure Java en collaboration avec juliencarette.com
2010 Transformer Logiciel de transformation de formats de fichiers ferroviaires et de chargement en base de données C++, Oracle Concepteur, développeur
2009 training Application documentaire de production automatique de slides et de livrets pour stagiaires d'une formation (format PDF) G Concepteur, développeur
2008 gpdf Bibliothèque de génération de documents PDF G, C Concepteur, développeur
2007 Messagerie applicative (Réseau Ferré de France) Prototype/ossature d'une architecture Web multi-niveaux .NET servant de base au développement d'applications C# 2.0, ASP.NET 2.0, ADO.NET 2.0, Ajax.asp.net, CSS Architecte, développeur
2003 - 2005 Course Manager (Valtech Training) Application Web de gestion des descriptions de cours Valtech Training Java, Struts, EJB 3, XML, XSLT, XSLFO Architecte, développeur

Projets Open Source

Date Projet Description Technologies Rôle
2010-2012 GT Surcouche objet légère du langage C. Successeur de G, implémenté sous forme d'une machine à états finis. Maintenant dans le domaine public! C, Ragel Concepteur, développeur
2008 G Surcouche objet (légère) du langage C C Concepteur, développeur
2005 PetShopAOP Exemple d'architecture technique tirant partie de l'AOP AspectDNG Architecte, développeur
2003 - 2006 AspectDNG Tisseur d'aspects statique .NET C#, XML, XPath Chef de projet, développeur
2003 - 2005 PetShopDNG Exemple d'architecture technique multi-couches .NET ASP.NET, C#, DTM, .NET Remoting Architecte, développeur

Formation initiale

1998 - 1999 ENST Paris - 2 et 3ème années
1997 ENST Bretagne - 1ère année
1995 - 1996 Math Sup/Spé au Lycée Kléber, Strasbourg
1994 Baccalauréat - Mention Bien

Langues

Bon niveau d'anglais: animation de formations à l'étranger, rédaction et traduction d'articles pour la version anglaise (partielle) de dotnetguru.

1998: Diplôme de l'université de Cambridge: Certificate in Advanced English