Services

Nous utilisons Elastic Search pour ses fonctionnalités de recherche textuelle et spatiale sur tout type de document. Son architecture distribuée permet une montée en charge rapide et sereine, tout en préservant des temps de réponses très bons. Il est notamment utilisé dans les APIs Entreprises et Geocoder.
MongoDB est une base de données no SQL pour le stockage de documents JSON. Elle présente un équilibre intéressant entre simplicité, performance et puissance. Nous l'utilisons pour le stockage de certains documents en base, comme par exemple nos comptes utilisateur.
Redis est un serveur de structures de données en mémoire très performant, et qui passe à l'échelle facilement. Les usages que nous en faisons sont multiples: cache, file de traitement, données partagées entre services.
Nous utilisons la stack TICK pour le monitoring de notre plateforme. Telegraf émet différentes métriques qui sont stockées dans InfluxDB. Kapacitor permet de soulever des alertes en cas de problème et Chronograf permet de visualiser l'ensemble.

Frameworks

Nous construisons nos APIs avec NodeJS et le framework Express. Nous aimons particulièrement leur nature asynchrone qui permet de faire de la glue avec les APIs d'autres services très facilement et de manière très performante. Tout comme Python, le Javascript est un langage haut niveau, qui permet d'écrire les fonctionnalités avec peu de lignes de code, et donc un risque de bugs et un coût de maintenance réduits.
VueJS est une librairie permettant de créer des applications riches et réactives. Nous avons été séduits par sa simplicité et la rapidité avec laquelle nous l'avons prise en main. VueJS combine le meilleur des deux mondes entre AngularJS et ReactJS. En plus des composants router et store, nous utilisons l'excellente librairie Vuetify pour le look de nos sites ainsi que le framework Nuxt.
Docker permet d'encapsuler une application et ses dépendances dans un conteneur isolé. C'est une brique essentielle dans notre processus de déploiement. Il nous permet d'automatiser nos processus de mise en recette et mise en production et d'avoir une intégration continue performante.

Outils

Gitlab est notre forge logicielle et notre outil de gestion de projets. Nous gérons l'avancement de nos projets avec des tickets. Gitlab permet aussi de piloter le déploiement continu et d'héberger les artefacts que nous produisons. En plus de faire un outil que nous apprécions vraiment, la société Gitlab Inc. est une source d'inspiration pour nos méthodes de travail.
GitHub est l'endroit où nous mettons à disposition tous nos projets open source. Il nous permet également de contribuer à la communauté open source en forkant les projet et soumettant des pull request.