Tech Lead @ Sillage
Contexte:
Les Sherpas est une plateforme de cours particuliers dont l'objectif est de
rendre le soutien scolaire accessible à tous en proposant des prix compétitifs,
un réseau de professeurs certifiés et un accompagnement sur mesure.
Réalisations:
- Développement et gestion du pôle IA
- Conception technique de nouvelles fonctionnalités, évolution et maintenance
de la plateforme - Création d'une documentation technique pour aligner les façons de faire de
l'équipe - Organisation de meetings Tech pour partager les connaissances de l'équipe
- Optimisation des performances NodeJS et SQL et partage de mes
connaissances sur le sujet - Intégrations Stripe
- Intégration avec les APIs de l'URSSAF pour l'avance de crédit d'impôts
Contexte:
SKULT est une startup dans l’univers du streaming et du gaming qui a pour but de rassembler les influenceurs et leur communauté.
En tant que premier salarié de l’entreprise, j’ai mis en place l’architecture
Cloud et créé les premières règles métiers de la plateforme, servant de base à de futures itérations produit.
J’ai participé à l'évolution du produit et aux prises de décisions stratégiques avec le CEO.
J’ai lead le pôle tech durant la phase de consolidation de notre équipe. Cette période a duré 9 mois pendant lesquels j’ai dirigé une équipe internationale composée d’externes. Mes responsabilités incluaient la rédaction des besoins produit sous forme de tickets ClickUp, la répartition de la charge de travail au sein de l'équipe, la tenue des meetings tech chaque matin et, enfin, l’assistance aux autres devs.
En parallèle, j’assistais le CEO dans le recrutement des candidats aux
différents postes technique.
J’ai également été sollicité par notre l’équipe marketing interne sur des sujets variés afin de booster leur productivité.
Réalisations:
- Conception, evolution et maintenance de la plateforme
- Architecture en microservices avec communications asynchrones
- Création du système de Fantasy League basée sur les performances in-game des streamers, avec mise en place de tests unitaires
- Création de l'architecture orientée event-sourcing afin de pouvoir partager
simplement les événements métiers entre les microservices - Interconnection avec plusieurs APIs externes, pour les besoins métiers
(Twitch, Zealy, Fortnite, COD: Warzone...) - Mise en place d'outils d'analytics (GA, Amplitude, Klaviyo...) pour mieux
comprendre les utilisateurs et affiner les campagnes de mailing - Présentation hebdomadaire des stats de la plateforme basées sur des
métriques produit et tech - Collaboration avec des équipes externes à l'international
- Organisation du travail en Kanban puis en Sprints. Création et gestion des tickets via ClickUp pour l'équipe
- Documentation
Contexte:
Allisone est une medtech spécialisée dans la dentisterie dont le but est
d’assister les praticiens dans l’analyse des radios panoramiques dentaires grâce à l’IA.
En tant que premier salarié de l’entreprise, j’ai participé à la mise en place les briques essentielles de la plateforme en collaboration directe avec le CTO.
A mon arrivée, une codebase Javascript avait déjà été livrée par un prestataire externe pour servir de preuve de concept.
Par soucis de maintenabilité, j’ai proposé l’utilisation de TypeScript et, après acceptation, ai commencé à migrer petit à petit le code JS en TS.
Ayant un intérêt pour le design, j’ai été plusieurs fois force de proposition sur des éléments UI/UX de l’application Web.
De plus, afin d’apporter le meilleur niveau de documentation à notre code, j’ai mis en place une bibliothèque de composants React, suivant le principe de l’atomic design, avec Storybook et AWS.
J’ai travaillé sur des problématiques de performance afin de répondre à
l’une des préoccupations principales de l’entreprise. J’ai amélioré le code de différentes façons: mémoïsation, moins de re-rendering, virtualisation de listes...
Pendant la phase de recrutement, j’ai participé aux entretiens techniques, d’abord accompagné par le CTO, puis en autonomie ensuite.
Réalisations:
- Conception, évolution et maintenance de la plateforme.
- Architecture en microservices avec communications synchrones.
- Création d’une bibliothèque de composant React avec Storybook.
- Création d'un outil de dessin vectoriel (React) pour effectuer le rendu d'un
algorithme d'IA (Python). Avec possibilité d'édition pour renforcer l'algorithme. - Création et envoie de rapport d’analyse par email.
- Participation à la mise en place des scripts de CI/CD.
- Gestion des tickets en autonomie avec debrief quotidien.
- Migration de la web app VueJS en ReactJS
- Evolution et maintenance
- Internationalisation (i18n)
Contexte:
ALIER est une petite ESN au sein de laquelle j’ai travaillé à concevoir une
application de mise en relation entre cordistes et donneurs d’ordres.
J'étais l’unique salarié affecté à cette mission et mon but a été de créer une
preuve de concept de l'idée du client.
Pour cette mission, c’est le dirigeant de la société ALIER qui s’occupait de toute la partie déploiement.
Ma principale préoccupation durant cette mission a été de produire le code le plus clair et documenté possible afin que ce PoC offre une base saine à de futures itérations produit.
J’ai documenté le code à l’aide de fichiers Markdown directement dans la codebase.
J’ai produit une documentation technique de l’API avec Postman et y ai
implémenté des tests pour chacun des endpoints.
Réalisations:
- Compréhension des besoins du client en contact direct avec lui
- Présentation périodique de l'avancée des travaux
- Documentation des fonctionnalités et du code
- Document et tests de l’API
- App Web en React
- App Mobile en React Native
- API en Node (Express)
Création d'un logiciel de dessin vectoriel en Python.
Île-de-France, France
Refonte de l'intranet
Dans ce projet, je porte en version web le jeu de plateau Donjons et Dragons sorti en 2003. C'est un terrain de jeu idéal pour expérimenter de nouveaux concepts d'architecture logicielle et repousser mes connaissances en dev fullstack, mais aussi devops, game dev ou bien encore gestion de projet.
Dans ce projet, je réécris des custom hooks React en TypeScript sans utiliser aucune dépendance externe. Chaque hook est prêt à être directement copié/collé pour en faire usage dans un projet externe.
Technique:
Le code présenté dans ce repo est écrit par mes soins, en appliquant les standards TypeScript les plus strict qui soient. Chaque fonction s'accompagne d'une batterie de tests unitaires qui s'exécute dans une pipeline de CI, ainsi que d'une documentation très complète.
(Plus d'infos technique sur mon Github, en lien de ce projet)
Dans ce projet, je réécris des fonctions utilitaires essentielles en TypeScript sans utiliser aucune dépendance externe. Chaque fonction est prête à être directement copiée/collée pour en faire usage dans un projet externe.
La motivation derrière ce projet me vient de différentes expériences en entreprise. Quand l'ajout de bibliothèque tierce (lodash, ramda, fp-ts...) est prohibé par l'équipe technique, il faut souvent recoder des utilitaires soi-même.
Ainsi, ce projet est pour moi une véritable base de données de fonctions utilitaires dans laquelle je peux venir piocher pour gagner du temps.
Le code présenté dans ce repo est écrit par mes soins, en appliquant les standards TypeScript les plus strict qui soient. Chaque fonction s'accompagne d'une batterie de tests unitaires qui s'exécute dans une pipeline de CI, ainsi que d'une documentation très complète.
(Plus d'infos technique sur mon Github, en lien de ce projet)
- Anglais