Menu

Mickaël LABAU

  • Lemonway
  • Technical Lead / Développeur R&D

Paris

En résumé

Issue dune passion pour le contact avec des «mondes» différents, initialement les sciences, c'est en fait très tôt que mon orientation professionnelle commence, au lycée, sur TI83+, puis sur ordinateur (C++) en autodidacte. Ma formation à EPITA ma permis de guider cette passion et la faire grandir vers d'autres horizons techniques. Bien qu'aimant beaucoup le C++ pour la liberté et la responsabilité qu'il procure, je suis tombé sous le charme du C# par hasard, et ne la plus abandonné depuis. Mon diplôme obtenu, je suis parti dans le monde des SSII pour la possibilité de voir rapidement des projets et des organisations différents. Et surtout espérer trouver des projets de grande qualité. J'étais naïf. La recherche de la qualité du code et de vision à long terme, fondation de toutes les ambitions, ma poussé ensuite vers l'édition de logiciel. Après 10 d'expérience à pétrir du code, j'ai rapidement eu besoin de tenter des approches nouvelles, de transgresser des paradigmes pour en inventer de nouveaux, pour voir ou cela me conduirait. Hors des sentiers battus, ces visions mont permis de résoudre plusieurs problèmes complexes. J'étais devenu architecte logiciel. Aujourd'hui je vois le code comme la cristallisation de l'imaginaire de tous ces gens, qui oeuvrent dans des domaines utiles au monde. Ces imaginaires, ces «mondes», évoluent moins vite, mais pourtant façonnent notre monde réel. Mon savoir-faire est un des instruments me permettant de sculpter ces mondes. J'aspire à apporter, aux gens non IT, la sensation que rien n'est impossible, dans leur monde business, pourvu que la vision soit commune. Et, finalement, peut-être, à notre humble échelle, impacter «le» monde.

Entreprises

  • Lemonway - Technical Lead / Développeur R&D

    Informatique | Paris (75000) 2019 - 2020 Tech Lead, Référent business, développement R&D
    Taille de l'équipe: 2-3

    • Obtention de l’attestation de la formation "AgilePM® - Agile (Fondation)"
    • Accompagnement des 3 nouveaux arrivants (2 IT, 1 Product Manager)
    • Connection au réseau de Ripple (RippleNet) pour envoyer les virements sortants
    • Refactoring technique du module de chargeback (LinqToSql => ORM spécifique) permettant un gain de rapidité de 50 au chargement)
    • Méta-programmation: Algorithme de réécriture de règle métier (édité par les utilisateurs) sous forme de code condensé / optimisé & compilation à la volé.
    => L'arbre de décision généré est environ 500 fois plus rapide. Rendant le feedback utilisateur agréable.
    => Affichage de l'arbre de décision (partiel / complet / en cours d'édition) via GraphViz

    • Utilisation des méta donnés de l'ORM (liens entre les bases, voir plus bas, partie architecte) pour:
    - créer un écran générique d'accès à toutes les donnés de toutes les bases,
    - filtrer sur n'importe quel colonnes
    - Affichage de la "super-BDD" avec GraphViz (https://graphviz.org/gallery/)
    - Fonctionnalité de jointure (visuel) possible entre base différente [non complété par manque de temps]
    • Début d'ajout d'un linq provider à l'ORM [non complété par manque de temps]

    En date du 17 Août 2020, je suis l'auteur de 90% des lignes de code soit environ 346 000 lignes
    Noté grade A par SonarQube
  • Lemonway - Architecte logiciel / Développeur .Net Full stack

    Informatique | Montreuil (93100) 2016 - 2019 Architecture / développement / DevOps et support du projet "TMT" (Treasury Management Tool).
    Ambiance startup !

    Ecriture de tous les modules techniques (C#):
    • ORM optimisé permettant de se connecter à 7 bases de donnés de rôle différents, limite l'écriture de SQL directement:
    - Abstraction des différences entre les bases de donnés (~1200) de nos clients (legacy) => Reduction du temps de dev.
    - Pré chargement des petites tables et gestion des caches à grande échelle pour assurer la cohérence et les performances
    - Gestion des metadata pour génération de code (UI) automatique et lien BI entre les différentes bases de donnés.
    - Ecran d'analyse des requêtes SQLs sortantes.
    • Système de taches permettant de lancer la GUI (default) ou une tache particulière pour l'automatisation depuis une autre application
    (scheduler fait en open source: https://gitlab.com/Solutions.Net/Scheduler me permettant d'être hyper réactif)
    • Connections aux systèmes extérieures: serveur FTP, API diverses (Gmail, Mandrill, …)
    • Politique de gestion des erreurs et des logs. Notification des erreurs vers ryver / slack
    => Réduit drastiquement le temps de support
    • Système de settings / déploiement rapide (DevOps)
    - Livraison en une minute (DevOps / commando)
    - Coté utilisateur : Détection de la mise a jour / installation / redémarrage automatique
    - Permet des configurations spécifiques des dev… en prod (et d'autre domaine pour plus tard).
    • Framework complet de base pour une application (https://gitlab.com/Framework.Net/ApplicationBase)
    • Architecture de la solution pour construire 3 applications différentes (x2: Gui et ligne de commande), sans redondance:
    - TMT : Framework business + legacy & particularités
    - TMT For ARIPay : Framework business + développement spécifique aux gros clients
    - Projet de R&D : TMT + des modules complémentaires
    • Module de gestion des droits par profil ou direct
    • Accompagnement d'un stagiaire pour la détection de fraude (python / tensorflow)
  • Lemonway - Développeur R&D & Business analyste

    Informatique | Montreuil (93100) 2016 - 2019 Projet TMT (Treasury Management Tool)
    Analyse des besoins métier & développement (ambiance startup)
    En relation avec les équipes Trésorerie, Comptable, LCB-FT et Support
    Taille de l'équipe: seul (90% du temps.)
    Techno: C#, winforms, (DevExpress, SQL, Commando (Environnement de test insuffisants), forte utilisation du multi-threading.
    Projet utilisé, depuis, par ~15 de personnes quotidiennement, de tous profils (équipes trésorerie, support, sales)

    • Récupération et intégration automatique des relevés de compte de données bancaire (Cfonb 120/320, Camt 53/54, Norma 43, RB89, RB189, bank logs)
    • Ecrans d'intégration manuelle des relevés de compte rejetés (duplication / doublon, periode manquante, etc)
    • Gestion de l'envoie des virements sortant et prélèvements de tous nos clients via "Sage".
    - En accord avec les exigences des équipes Treso et LCB-FT.
    => Envoie d'environ 1.3Mds d'euro par an
    • Ecrans de réconciliation bancaires (BNP, CIC suisse, Sabadell) (Algorithmes avancés et spécifiques):
    - multi-niveaux: RDC Bank Logs (JRB) PSP Logs Operation back office Lemonway)
    - gérant mes donnés manquantes / incomplète
    - fortement optimisé pour SQL Serveur (procédures stockée impossible) : 37h (algorithme naif) -> 5 minutes.
    • Fenêtre de traitement des flux money-in (virement entrant, prélèvement, chèque, pagaré, chargeback...)
    => ~2.5 Mds traité
    • Calcul des montants des cantonnement dans toutes les devises sur toutes les bases
    • Module de regle métiers basique pour classifier les opérations entrantes.
    • Couche graphique (open-source) avec fonctionnalités génériques et ergonomique sur toutes les grilles:
    - Export excel,
    - Ajout de colonnes avec formule
    - Sauvegarde des layouts (personnels ou partagés)
    - Croisement de donnés,
    - Extraction des donnes sommés
    - Affichage sous forme de graphique (Camembert / courbe)
    - etc
    • Ecran performant de recherches de cash flow multi-bases (affiche 1M de ligne sans problème)
  • NeoXam - Architecte technique

    Informatique | Paris 2014 - 2016 Lead developer sTracker v3, un projet complexe (mais stimulant !).
    La v3 devait à la fois avoir :
    - le comportement de la v2 dont la techno est obsolete (200000 lignes de VB6, 500000 * 10 client de vbscript, object COM, ...)
    - de meilleur performance et ergonomie (C# / VB.net, SQL Serveur, DevExpress, Script C#).
    Les sujets techniques que j'ai fait / refondu :
    - Multi threading + Monitoring en live
    - Gestion mémoire et tracking de tous les objets (pour l'analyse, l'optimisation et le debug)
    - Gestion du cache (éviter les objets en doublon)
    - Compatibilite du VBScript par le framework .Net
    - Création d'un mini ORM adapté aux problématiques V2 / V3
    - Module de workflow des ordres, transaction, asset,...
    Coté interface :
    - Raffraichissement des écrans (Modélisation MVP petit à petit)
    - Framework pour la GUI
    - Refonte de certains écran et vue fonctionnel : assets, change, workflow,...
    - Plusieurs user control complexes : workflow, Treeview principale à chargement différé
  • Projet entrepreneurial (en parallèle) - Entrepreneur

    Informatique | 2013 - maintenant Création d'un outil spécialisé pour les IME et SESSAD de France pour les aider faire leur planning selon leur besoins et leur contraintes spécifiques.
    Etude commencée il a trois ans.... des imprévus, des remises en questions, une version 1, un pivot, une version 2. Compréhension de leurs besoins, la modélisation, auprès de l'IME / SESSAD de Corbeil en parallèle à mon travail.
    Pas d'entreprise d'ouverte pour le moment (ca serait une perte d'argent inutile pour le moment)
  • Cap Fi Technology - Consultant C#

    Informatique | 2011 - 2014 J'ai effectué trois missions :
    - A la société général (projet X-One , partie Forex) : vous avez probablement déjà entendu parler de X-One )
    C#, DevExpress, Oracle (équipe de 9 personnes, beaucoup de monde dans les autres)
    - A CAcib sur le projet Glory : Logiciel de rapprochement BO / FO et BO / BO
    C#, DevExpress, SQL Server (équipe de 6 personnes)
    - A Natixis sur le projet ASAP : logiciel de création et gestion de produits structurés sur Hedge Fund
    C#, VB.NET, DevExpress, SQL Server (équipe de 4 puis 6 personnes)

Formations

  • EPITA

    Kremlin Bicêtre 2003 - 2010

Réseau

Annuaire des membres :