@fabien0102

  • github
  • twitter
  • linkedin
  • codingame
  • email
fren

Fullstack JavaScript

  • React
  • Redux
  • Apollo
  • RxJS
  • Jest
  • Angular
  • JavaScript
  • TypeScript
  • Ionic
  • Firebase
  • MongoDB
  • GraphQL
  • NodeJS
  • Webpack

DevOps

  • Docker
  • AWS
  • Jenkins
  • Azure

Gestion de projet

  • Novembre 2017 - Avril 2018

    Senior Fullstack JavaScript - Baze

    Développement de l’application web et des outils de gestion interne de Baze.

    Baze est une solution qui vous fournit des compléments alimentaire sur mesure à partir d’échantillons sanguins et de données personnelles.

    Mes différents projets/responsabilités ont été :

    • L’application web en react/redux/react-native-web/apollo
    • L’application de gestion en react/redux/apollo/redux-observable/apollo
    • L’application permettant de gérer le tracking des échantillons dans les laboratoires (react + apollo-link-rest)
    • Un backend GraphQL pour gérer les différents formulaires (graphql-yoga)
    • Un backend GraphQL pour administrer les différents algorithmes de recommendation (graphcool + typescript)

    C'était ma première expérience avec GraphQL en production et elle s’est très bien passée. Difficile de refaire du REST après ça !

    J’ai aussi profité de cette expérience pour activement participer à des projets open-source comme graphql-yoga et apollo-link-rest. En effet, rien de tel qu’une application en production pour améliorer nos outils :)

    web

    #react#redux#redux−observable#graphql#apollo#react-native#graphcool#typescript#nodejs#mongodb#docker#jest#TDD
  • Été 2017

    Open-source - Gatsby

    Participation active à la communauté de Gatsby : développement, revue de code, tests et support.

    Quand j’ai décidé de faire ce site, je voulais :

    • coder en React
    • ne pas à avoir à gérer de serveur
    • être SEO friendly (c’est là où ça se corse)

    C’est avec ce cahier des charges en tête que j’ai trouvé Gatsby (en version pre-alpha), et j’ai choisi d’y prendre part.

    Mes principales interventions ont été :

    • rendre l’environnement de Gatsby compatible avec Windows
    • permettre l’utilisation de TypeScript
    • trouver et corriger des bugs
    • collaborer avec les autres développeurs sur Discord
    • participer aux choix techniques (notamment l’architecture des dossiers)
    • relecture et validation des pull requests

    Bref, quelques pull requests et galères plus tard, j’ai enfin pu attaquer mon site dans de bonnes conditions :)

    web github

    #open-source#github#graphQL#react#redux#serverless#typescript#webpack
  • Avril 2017

    Freelance - Actronika

    Développement du logiciel pour les kits de démonstration de la puce Tactronik.

    Ce logiciel, réalisé avec Electron/React/Redux/Redux-observable/Jest, permet de paramétrer les différents effets haptiques prédéfinis et les envoyer à la carte de démonstration via le port série.

    Le challenge de ce projet était d'avoir une couche de communication série, et cela sans avoir à disposition la carte électronique pour tester avant la livraison.

    Grâce à Redux-observable et une batterie de tests unitaires, la connexion s'est fait sans accroc. Le projet est facilement maintenable et évolutif. Et ça, c'est cool !

    web

    #electron#react#redux#redux−observable#serial−port#typescript#jest#TDD#github
  • Février 2017

    Freelance - Actronika

    Développement d’une solution pour générer des effets haptiques.

    Un projet rapide pour un POC client, le but étant de créer une application permettant de séquencer des effets haptiques puis d’en exporter le résultat.

    Le challenge était la rapidité du projet et la gestion d’une grosse quantité de données. C’est pourquoi nous sommes partis sur une solution 100% web avec un export CSV, malgré le risque de latence du navigateur.

    Finalement le produit marche parfaitement, et le cahier des charges a été respecté !

    J'ai aussi profité de cette première mission avec Actronika pour former l'équipe à React/Redux/TypeScript/Jest. L'objectif étant une reprise facile du projet !

    web

    #react#redux#typescript#jest#TDD#github
  • Décembre 2016

    Découverte de React - Puissance 4

    Vacances de Noël \o/ Le monde ne parle que de React et Redux, mais le destin a fait que je n'ai pour l'instant fait que du Angular…

    Qu’à cela ne tienne ! Je profite donc de ces vacances pour combler ce vide ! Pour l'occasion, je pars sur l'implémentation d'un puissance 4, le tout en TDD (j'aime bien les tests) et en TypeScript !

    C’est donc ainsi que mon aventure avec React/Redux a commencé ! C’est d'ailleurs ce projet qui a été utilisé comme starter et support de cours pour Actronika.

    Verdict : Redux c’est génial ! Je comprends parfaitement l'engouement qu'il y a autour de cette techno ! Et je ne peux me passer du hot-reload ^^ Bref un gros coup de cœur pour cette stack !

    web github

    #react#redux#jest#typescript#webpack 2#github
  • Août 2016 - Mars 2017

    CTO - LearnMyLanguage

    Conception et développement de l'intégralité de l'application Speekoo.

    Speekoo est une application d'apprentissage de langues. Sa particularité est dans sa méthode qui se base sur la structure de la langue et non pas sur des situations à apprendre par cœur.

    Mes différents projets/responsabilités ont été :

    • L'application web en angular 2.
    • Les applications mobiles iOS et Android, réalisée avec Ionic 2 pour une mutualisation du code avec l'application web.
    • L'architecture générale, notamment de la base de données Firebase.
    • Une interface d'administration, permettant d'importer les cours/fiches à partir d'un fichier Excel et de modifier à la volée le contenu en ligne.
    • Mise en place de l'organisation projet (Team services, Kanban)

    web app-store play-store

    #angular 2#ionic 2#typescript#firebase#rxjs#lodash#azure#stripe#ios#android#nodeJS#express 4
  • 2014 - 2016

    CTO et Associé à Metidia

    Ma plus grande aventure (pour l'instant) ! J'ai nommé : Vinoga, le jeu de farming social sur l'univers du vin.

    Au nombre de deux développeurs, nous avons mis en place non seulement un jeu complet mais aussi tout un environnement de développement afin d’optimiser notre efficacité. J'ai été personnellement responsable de l'architecture des serveurs et du back-end. Niveau architecture, tout est déployable et versionné sur cloud formation. Cela comporte entre autre un jenkins, un redis, et tout un système de gestion d'instances docker (le tout en déploiement continu, sans coupure des serveurs).

    Le jeu en question est uniquement sur Facebook et est entièrement réalisé en JavaScript. Bon nombre de défis ont été relevés pendant ces 2 ans : performance, UI, tests A-B, animations ponctuelles… Bref, que du bonheur !

    Usant de mon expérience personnelle dans le graphisme, j'ai aussi su diriger et former tous nos graphistes et assurer la transition entre les équipes. Par ailleurs, de par la spécificité du fonctionnement d'une start-up, j'ai également mis la main à la pâte dans tous les domaines où cela m'était possible (réalisation de vidéos promotionnelles, organisation d'événements, création graphique…). Cela n'a pas toujours été facile, mais une chose est sûre : j'ai appris beaucoup de cette expérience.

    Enfin, dernier chantier où nous avons énormément expérimenté et appris, la gestion de projet. De la méthode la RACHE, à la mise en place de méthodes Agiles (Scrum puis Kanban), nous avons pu constater les avantages/inconvénients de chaque méthode, les adapter et progresser !

    web

    #backbonejs#nodejs#sails#mongodb#dynamodb#github#TDD#LEAN#kanban#aws#jenkins#trello
  • 2009 - 2013

    Diplôme de grande école de commerce

    Télécom EM - Spécialisation Ingénierie en SI

    Une école de commerce ?! Et oui, lors de mes études j'ai choisie d'approfondir des sujets plus métier et différent de ma passion : la programmation.

    En effet, je code depuis l'âge de 11 ans, et j'ai toujours appris en autodidacte. Aimant apprendre, c’est donc naturellement que je me suis dirigé vers des études dans le management/gestion/commerce, à noter toutefois que j’ai choisi une école qui partage son campus avec une école d’ingénieur et que ma spécialisation est commune aux deux écoles.

    Je ne regrette en aucun cas ce parcours, qui me permet d'appréhender les problématiques de mes projets avec une plus grande ouverture d’esprit :)

    Au cours de cette période j’ai aussi été énormément impliqué associativement : Vice-président du BDA, Président du club de bricolage, membre du club de robotique…

    #management#marketing#gestion#système d'information#Télécom EM#Mines télécom
  • 2008 - 2009

    DUT Techniques de commercialisation

    IUT Techniques de commercialisation à Sénart (77)

    Une des meilleures formations à la vie active qui soit (à mon sens), ces deux ans de projets divers et variés en équipe font de moi ce que je suis aujourd’hui !

    C’est donc dès la sortie du lycée que j’ai commencé à travailler en groupe. J’y ai appris l’importance de l’organisation et de la communication, qui sont encore aujourd’hui au cœur de mon métier.

    Tout au long de cette formation, j’ai été en contact avec des professionnels et ai réalisé des projets concrets (téléthon en hypermarché, proposition pour une campagne de communication…).

    #management#projets#gestion#commerce#marketing