Gautier Le Bissonnais
Backend Engineer - Blablacar
Ma curiosité pour l’informatique, le développement et les nouvelles technologies m’ont amené à intégrer l'EPSI, école d’ingénierie informatique à Lyon. J'ai été diplomé en 2016 et je travaille depuis chez Blablacar en tant que Backend Engineer au sein de l'équipe de paiement.
Développement Backend
Durant mes 2 ans et demi chez Blablacar, j'ai principalement travaillé sur des problématiques backend. Notre stack étant principalement axée sur PHP/Symfony 3 j'ai acquis une grande expérience dans ce domaine. L'omniprésence de RabbitMQ dans notre architecture fait que j'ai aussi beaucoup d'expérience sur cette technologie.
J'ai aussi acquis de l'experience sur des langages tels que Python et Go, des technologies comme Rocket, Docker, Kubernetes, ...
Ayant participé à toutes les étapes deconception ainsi que de développement de tout un écosystème de paiement, j'ai aussi appris beaucoup en terme d'architecture logicielle, notamment le Domain Driven Design (tel que théorisé par Eric Evans dans le livre qui porte le même nom) qui ont été des principes fondateurs de notre service de paiement.
Notre équipe étant entièrement autonome et Agile, j'ai aussi découpé des briques fonctionnelles en tâches techniques, ainsi qu'élaboré un planning quant au développement et a la mise en production de celles ci.
Gestion de projet
Mon ambition à terme ? Occuper le poste de chef de projet de développement.
A l’EPSI, j’ai pu faire preuve en de maintes occasions d’un certain savoir-faire en terme de gestion d’équipe, notamment en tant que manager.
Ce qui me plaît dans la gestion de projet, c’est avant tout le relationnel, aspect clé d’un bon déroulement de travail en groupe, car il permet d’humaniser un travail d’apparence plutôt solitaire et de créer des synergies de travail formatrices.
Mise en place du projet, définition des tâches et de l'architecture, gestion de l'avancement... Ce sont là toutes des étapes que j’aime mettre en place, et que je maîtrise désormais grâce à mes expériences précédentes.
Développement mobile
Pour ce qui est du développement mobile, j'ai été responsable durant mes 4 mois de stage chez Personalized Software de l'application iOS/Android BidRight Lite développée en Cordova/AngularJS.
A titre personnel , j'ai travaillé sur une application mobile développée avec Xamarin : Weilyne. Un projet qui a atteint son but, et qui pour des raisons professionelles de la part des membres de l'équipe n'a pas vraiment connu de suite.
Sécurité/Hacking
La sécurité informatique et le hacking, sont des domaines qui continuent de me passioner… C’est pour cette raison que je suis membre de Root me (Mon profil) depuis plus de trois ans. Résoudre les challenges, particulièrement ceux qui exploitent des failles web, la cryptanalyse et la stéganographie, se mesurer face à l’énigme, trouver l’élément clé… Un vrai passe-temps qui s’est traduit par la participation à 3 hackatons jusqu'a présent :
Malheureusement, je n'ai plus autant de temps pour développer mes connaissances dans ce domaine en même temps que mon travail mais l'incorporer dans mes futures activités serait un réel plaisir.Centres d'ntêrets
Mis à part l'informatique et les nouvelles technologies, je suis féru de sport : escalade, tennis, tennis de table, karaté en étant plus jeune… Tout y passe ! Amateur de course – et de défis ! – j'ai également relevé le challenge du Mud Day Lyon 2015. Je suis également passioné de Ski et de sports Freestyle/Extrèmes (Skate, BMX, Snowboard, VTT, la liste est longue!) bien que non pratiquant. Mais le sport pour moi ne se pratique pas exclusivement en salle de grimpe ou sur un court… Je suis un grand fan de l’e-sport, et je me tiens régulièrement informé de la démocratisation de cette nouvelle conception de la compétition.
Expériences
-
Backend Engineer
Blablacar (Paris, France)Durant mon stage (Février 2016 - Aout 2016) ma principale mission a été la migration du service de détection de fraude du monolithe contenant toute la logique métier vers un service indépendant. J'ai été responsable de la conception de cette mission ainsi que de son éxecution. Cette mission m'a permis de me familiariser avec le domaine de la fraude et plus globalement du paiement puisque je faisait entièrement partie de cette équipe.
A la suite de mon stage, j'ai intégré une nouvelle équipe, dénommée core-payment, dont le but était de déplacer toute la logique de paiement du monolithe vers une api entièrement indépendante. Pour ce faire, il y a eu une période de brainstorming afin de décortiquer ce qu'était le paiement, comment modéliser ce Domaine en suivant le Domain Driven Developpment, et comment construire le service a partir de ces réflexions. Une fois cette étape effectuée, il a fallu définir quelles briques nous devions attaquer en premier afin de pouvoir utiliser ce service en production sans interruption de service.
Les responsabilités de ce service étaient vastes, il devait servir d'intermédiaire entre n'importe quel "client" (au sens application interne) qui voulait payer et les providers de paiement que nous utilisions (Adyen, Paypal, Yandex). Il devait également abstraire toutes les notions de paiement (cycle de vie, réconciliation, abstraction d'erreurs). Une autre exigeance était de fournir une documentationd détaillée afin que n'importe qui puisse utiliser ce service.
En terme de technologie utilisée, ce service se est une API rest développée en Symfony 3 / PHP 7. Compte tenu de la criticité du domaine, la couverture de tests unitaires(PHPUnit)/fonctionnels/d'api(Dredd & blueprint) se devait d'être exemplaire . D'autre part le logging(Monolog, ELK), et le monitoring(prometheus) devaient également être irréprochables, tant sur les aspects métiers que techniques. Une fois que ces sujets étaient maitrisés, un alerting métier a été mis en place ainsi qu'une équipe d'astreinte dont j'ai fait partie.
Le service de paiement était la partie émergée de l'iceberg, puisque notre vraie responsabilité était de développer un écosystème de paiement complètement autonome, ce qui nous a amené a créer divers workers dont les rôles variaient de la gestion des notifications envoyées par nos providers, que nous envoyions a nos clients, de l'avancement du cycle de vie d'un paiement, ... Une grande partie de cet écosystème était également diverses commandes qui nous permettaient d'automatiser la réconciliation, mais aussi de générer les fichiers de comptabilité.
Notre équipe disposait d'une grande autonomie quand a la partie devOps de notre infrastructure, ce qui m'a permi d'engranger également énormément de connaissances dans ce domaine.
Une fois ce grand projet fini, en plus de la maintenance et de l'évolution de ce dernier, nous avons développé divers services en Java sur des sujets liés de prêt ou de loin au paiement. J'ai également eu pour responsabilité de mener la migration de nombreuses commandes PHP d'un datacenter legacy vers l'architecture en conteneur (rocket/kube), de la création des pods a leur déploiement, j'ai effectué toutes les étapes. Ces commandes étant relativement anciennes et n'étant pas forcément adaptées au fonctionnement dans un conteneur (lancement de commandes en direct sur le serveur, ..) je les ai également fait évoluer et migrées vers des librairies/dépendances plus récentes.
Compétences Techniques
- PHP7 / Symfony3 / Silex
- Python
- Java
- Go
- Docker
- Rocket
- Kubernetes
Compétences Organisationelles
- Méthodes Agiles
- Scrum
- Domain Driven Design
- Découpage de tâches techniques
- Planning
- gestion de projet
Logiciels/OS/Plateformes utilisés
- Mac OS
- La suite Jetbrains
- Sequel Pro
- La suite Atlassian
- Git
- Kibana
- Prometheus/Grafana
-
Développeur Web
Ultimate Washer (Jupiter, Floride)J'ai participé à la création d’une solution web en C#.net/ASP MVC. Cette solution est déstinée a jouer le rôle d'un ERP qui permettrait de publier ses produits sur l'Amazon Market Place.
Responsable de la refonte d'une solution de reporting interne, passant du php procédural à un modèle MVC, avec l'ajout d'un graphe pour visualiser les données.
Réparation de multiples pages de la partie administration du site.
Conception d’un script en python de conversion de pages web, ayant pour objectif de transformer le structure du modèle "table" HTML au modèle grid de Bootstrap, afin de rendre le design responsive.
Compétences Techniques
- ASP.NET MVC5
- C#.Net
- PHP5
- Python
- Jquery
- Bootstrap
Compétences Organisationelles
- Méthodes Agiles
- Scrum
- Refonte de l'architecture de deux applications pour qu'elles adoptent le MVC
Logiciels/OS/Plateformes utilisés
- Windows
- Visual Studio 2015
- SQL Server 2012
- Team Foundation Server
-
Développeur Web/Mobile
Personalized Software (Dublin, Irlande)Responsable développement et maintenance de l’application bid-right-lite Android & iOS (Cordova, Angular, Jquery), l'application était basée sur une API REST élaborée en Java, sur laquelle j'ai du effectuer des modifications.
Repsonsable de la mise en place d'un système de notifications push, de l'implémentation d'un tableau de bord ainsi que de diverses améliorations ergonomiques.
Compétences Techniques
- AngularJS
- Cordova/Phonegap
- Jquery
- Bootstrap
- Java
Compétences Organisationelles
- Méthodes Agiles
- Scrum
- Gestion autonome d'une application
Logiciels/OS/Plateformes utilisés
- Ubuntu
- Eclipse
- IntelliJ
- Android
- iOS
- Redmine
-
Développeur Web
Digitaline Conseil (Chaponost, France)Création du site enjoycorporation, Html et CSS Et javascript/Jquery, création du lecteur de musique.
Compétences Techniques
- Jquery
- HTML5/CSS3
- Flash
- Bootstrap
Compétences Organisationelles
- Télé-travail
- Autonomie
Logiciels/OS/Plateformes utilisés
- Windows
- Sublime Text
-
Développeur Web/Intranet
Cofely Services GDF-SUEZ (Lyon, France)Mise à jour d’un outil de collecte de statistiques (C#, Sharepoint). Conception d’un logiciel interne pour améliorer la productivité de l’équipe(C#).
Compétences Techniques
- C#
- Sharepoint
Compétences Organisationelles
- Méthodes Agiles
- Développement en autonomie
- Suivi d'un projet à grande échelle
Logiciels/OS/Plateformes utilisés
- Windows
- Windows Server 2010
- SQL Server
- Visual Studio 2008
Formation
-
Expert en informatique et systèmes d'information
Bac + 5 (Niveau I)
EPSI LyonDiplômes Obtenus
- Expert en informatique et systèmes d'information Titre Niveau I (Bac +5)2016
- TOEIC (Certification d'anglais)2015 (990/990)
- Bachelor en Informatique (Bac + 3)2014 (Mention Assez Bien)
- BTS - Services Informatiques aux Organisations (SIO) - Option SLAM 2013 (Mention Assez Bien)
-
Baccalauréat Économique et Social
Bac
Lycée Parc ChabrièresDiplômes Obtenus
- BAC - Économique et social (ES) - Option Mathématiques 2011 (Mention Assez Bien)
Compétences
- PHP, Symfony 2
- Javascript, Jquery, Jquery Mobile, AngularJS, Node.js
- C#, ASP.NET MVC5
- Java
- Phonegap
- HTML 5, CSS
- SQL Server, MySQL, MongoDB
- Python
Langues
- Français Langue maternelle
- Anglais Bilingue
Diplômes
- TOEIC 990/990 (Certification d'anglais)2015
- Bachelor en Informatique (Bac + 3)2014
- BTS - Services Informatiques aux Organisations (SIO) - Option SLAM 2013
- BAC - Économique et social (ES) - Option Mathématiques 2011