Voici un résumé de mon expérience dans le domaine du Go. Une version complète de mon CV est disponible ici.
English version is available here.
En tant que Lead Backend Developer, je développe des microservices en Go avec les frameworks Gin + Gorm + SwaGin. J’oriente les choix techniques en réalisant des POCs en concertation avec l’équipe. J’ai aussi contribué à des projets Open Source afin de corriger et améliorer les outils suivants :
J’ai aussi assuré des présentations sur des sujets techniques sur le Go : Gobinsec, SwaGin, Go Generics, NeON. J’ai aussi soumis à l’équipe des challenges de code et publié des articles sur le blog d’Intercloud (à l’adresse https://blog.intercloud.com).
Développement d’une application Django pour l’administration des patients, examens et opérateurs de l’application Androïd et consultation des échographies par les cardiologues. La synchronisation avec l’app est réalisée avec un webservice REST en Go. Développement d’un viewer web d’échographies cardiaques avec la bibliothèque Cornerstone.
Mise en oeuvre chez OVH pour un webservice haute performance traçant les codes dépréciés. Il peut traiter plus de 8000 appels par seconde et les enregistrer en base de données PostgreSQL.
Chez http://mieuxplacer.com, j’ai mis en œuvre Go pour écrire des scripts d’appel à des webservices et des batchs de récupération de données économiques (requêtes SQL et appels REST). Le gain de performances obtenu a été spectaculaire.
Par ailleurs j’ai assuré un atelier Go et TDD.
Au cours de l’année 2017, j’ai développé la chaîne de publication des ouvrages et encyclopédies Dalloz. En cette occasion, j’ai codé nombre d’outils en Go. En particulier, j’ai développé en Go et mis en œuvre un outil de build appelé Néon ainsi qu’un webservice REST pour la publication des ouvrages.
J’ai découvert le Go début 2014 et l’ai rapidement mis en œuvre au sein d’Orange pour la réécriture d’un serveur SMS haute-performance. Ce serveur avait été implémenté en Java, avec NIO, et était depuis deux années en débogage pour le faire passer en production.
Devant les difficultés rencontrées pour corriger le code existant, j’ai proposé de développer des POCs, en Java sans NIO et en Go, afin de faire un choix éclairé de la technologie à mettre en place. Ces versions simplifiées ont été développées en une semaine chacune et à l’issue de tables rondes, il a été décidé de partir sur la solution Go, pour des questions de simplicité de code et de performances.
Ce travail a donné lieu à une conférence à BDX.IO et aux DevDays Orange en 2014.
Depuis que j’ai découvert le langage Go, il est devenu mon langage de prédilection pour mes projets personnels.
Ainsi, j’ai un compte Github assez actif dans le domaine du Go :