Portrait Client

gaussel_crop

Nicolas Gaussel,
le code R comme actif… capital

Nicolas Gaussel est président de Metori Capital Management, une société indépendante spécialisée dans la gestion quantitative d’actifs financiers. Ses équipes gèrent les portefeuilles d’investissement d’institutions financières, de gestionnaires d’actifs, ou encore de banques privées, à travers un programme d’investissement qui repose sur des modèles mathématiques et statistiques. L’ensemble des collaborateurs de Metori a choisi ThinkR pour opérer sa montée en compétences sur R et soutenir sa croissance. Au-delà des dimensions techniques liées à R, le parcours de 3 formations certifiantes de ThinkR sur 6 mois a permis d’instaurer un langage de communication commun et de partager une même culture logicielle au sein d’une forge R. Petit retour d’expérience…

Contexte – pourquoi avoir choisi R pour votre métier ?

Notre métier consiste à prendre des décisions d’investissement sur la base d’analyses statistiques. Pour y parvenir, on peut distinguer 2 modes d’organisation. Le premier, visant la flexibilité et la rapidité, consiste en un écosystème de feuilles Excel et de fonctions Visual Basic maintenu par les opérateurs. Le second, plus industriel, visant la sécurité et la qualité, doit reposer sur des outils informatiques plus robustes.

Dans notre cas, les décisions de gestion sont complètement systématisées. Le choix que nous avons fait, initié par Guillaume Jamet, un des associés fondateurs de Metori, a été de faire tout cela en R, appelé depuis une plateforme C#.

A l’origine, nous ne pensions pas que ce choix aurait un impact sur les fonctions marketing. Pourtant, nous avons rapidement réalisé qu’une bonne partie de notre activité consiste à faire du reporting et de la communication complètement data-driven. Rapports mensuels, hebdomadaires, pitchbooks… Nous avons une bonne quinzaine de documents contenant des informations comme nos encours, nos positions ou nos résultats qui doivent dont régulièrement être mis à jour.

Dans le monde de la finance, une équipe marketing typique doit consacrer beaucoup de temps à la mise à jour de ces documents-là. Dans un environnement Excel/VBA, c’est concrètement ingérable. Cela conduit presque toujours à une expérience client de mauvaise qualité avec de nombreuses erreurs… Nous nous sommes donc rendu que, même au marketing, les personnes devaient avoir une compréhension de ce que signifiait un processus data-driven. C’est ainsi que, après avoir découvert l’existence de R Markdown et son ouverture sur le HTML et le CSS, nous avons décidé de basculer toute notre chaîne de production documentaire dans cet environnement.

Se former à R, un choix stratégique

Une fois qu’il a été clair que R allait devenir la lingua franca de Metori, la nécessité de nous former est apparue. Grâce aux tutoriels et cours sur Youtube, on s’en sort à peu près. Mais très vite, on se retrouve avec du code désorganisé, sur lequel il est difficile de collaborer. Les irritants du début deviennent de vrais problèmes industriels : version de R, version du package, déploiement etc. Le fameux “ça ne marche pas sur ma machine !”… Comment faire évoluer les choses si on se retrouve coincé à ce niveau-là ? Un ancien salarié avait fait un package R et plusieurs applications Shiny, mais quand il est parti, nous nous sommes retrouvés face à quelque chose que nous ne pouvions maintenir, ou améliorer. On a pensé à externaliser la gestion de ce package et de nos applications mais, nous n’aurions pas été plus avancés : il fallait impérativement nous approprier notre code, nos données, notre reporting, nos applications Shiny… notre capital en somme.

C’est une démarche très différente de ce que l’on connait habituellement. Avant de créer Metori, j’étais à des postes à responsabilité dans un grand groupe bancaire. A ce type de poste, on attend d’un responsable qu’il se concentre sur la stratégie et la gestion des personnes mais surtout pas aux « détails » informatiques ! D’ailleurs, l’existence des DSI impose une séparation stricte entre les réflexions métiers et les réflexions IT alors que celles-ci sont profondément imbriquées.

Chez Metori, notre petite taille nous a permis de développer un point de vue totalement opposé : la maîtrise du geste technique, en particulier informatique, est au cœur de notre projet d’entreprise.

Donc nous en étions là : des scripts R un peu partout et difficiles à organiser… Une fois qu’un rapport est produit, où le place-t-on, concrètement ? site internet ? dossier ? par qui est-il accessible ? Nous avons alors découvert Rstudio Connect, c’est magique ! C’est véritablement pensé comme un outil de facilitation du déploiement des produits de data science. Encore faut-il avoir le niveau suffisant pour faire les choses sérieusement. Utiliser Connect comme un explorateur amélioré à 5000 €, c’est du gâchis. Même chose pour la version pro de RStudio Server. Au fur et à mesure que nous avons expérimenté la valeur ajoutée de ces outils, nous nous sommes dit qu’il fallait aller au bout de l’exercice. Et la meilleure façon de progresser, c’est de se former. Pas seulement les équipes techniques mais TOUS les employés !

Bien sûr, cela a un coût. La formation a été un gros poste de dépenses de 2020. Pour une structure comme la nôtre, prendre la décision de dépenser autant d’argent, en n’ayant qu’une idée imparfaite de ce que cela allait nous apporter, ça peut faire un peu peur.

La formation, qu’en avez-vous pensé ?

Nous avons trouvé le premier volet de la formation passionnant et très sympa. Nous sommes arrivés à R via C, donc il est vrai que nous avions tendance à l’utiliser comme un langage informatique, nous ne connaissions pas du tout le côté data science. Avant, pour moi, la structure de base en R était la matrice. Ces listes, ces dataframes… tu te dis que ça doit bien être utile, peu à peu tu te rends compte que tout est construit autour de ces éléments. Et que tu dois donc faire quelque chose de travers. Au premier volet de la formation, la découverte du Tidyverse, c’est comme une révélation ! Import, export et manipulation des données, tout devient simple !

Ensuite, dans le second volet de la formation, on entre dans le cœur du sujet. C’est « la lumière fut » ! Ranger ses fonctions dans des packages est un peu contraignant, mais très structurant. Tout le monde s’organise de la même façon et cela facilite la collaboration.
Il y a quand même un coût d’entrée. A ce stade on aura passé 70 heures en formation, ce n’est pas rien. Pour 15 personnes, ça fait 1050 heures. Mais quand on pense que dans 95% des entreprises, quand on demande des choses ultra basiques comme une extraction de données et quelques statistiques descriptives, cela prend un temps infiniment long… on se dit que c’est du temps certes, mais bien investi. Après la formation, chacun sait proprement utiliser ses outils et partager son travail.

Après ces deux premiers volets, le besoin de formation Shiny est apparu naturellement. On avait quelques applications Shiny, codées après avoir suivi quelques tutos, mais les mêmes questions que les précédentes se sont posées : comment la faire évoluer, comment la partager proprement, quelles sont les bonnes pratiques pour que ce soit solide ? Si on veut des applications en production, on ne peut pas éviter la case formation. Et cette formation, c’était exactement ce dont nous avions besoin. Et puis honnêtement, les formateurs sont top : des gens extrêmement compétents qui aiment ce qu’ils font.

Les résultats : comment ça se passe depuis la formation ?

Nous avions pris conscience qu’il fallait embaucher un expert data et R. ThinkR a joué les entremetteurs et Elena est arrivée juste après la fin du premier volet de la formation. Elle a repris le travail de fond que nous pensions confier à ThinkR, et mine de rien ça prend du temps : elle transforme en profondeur notre infra R, en mettant en place toutes les bonnes pratiques apprises durant le cursus. Grâce à la formation, que ce soit avec les clients côté marketing, les gérants ou ceux qui gèrent notre infra, tout le monde se comprend. La communication est fluide, on parle le même langage.

La valeur ajoutée de ces formations, en plus du contenu en tant que tel, de la pédagogie et de la passion des formateurs, c’est aussi une transformation vers le “travailler tous ensemble grâce à une langue commune”’. Dans les entreprises que j’ai connues avant de créer Metori, il y avait beaucoup de personnes, mais pas de langage informatique commun.

Par exemple, nous sommes en train de développer une filiale en Chine et nous y avons également implémenté ce mode de fonctionnement. R c’est notre langage. Il n’y a pas de jugement de valeur par rapport à d’autres langages comme Python par exemple, c’est juste que notre compétence et notre autonomie s’est construite sur R. Quand on lance un produit aujourd’hui, ça nous prend 2 jours pour déployer la totalité de la chaîne, c’est d’une efficacité redoutable. En comparaison, nos concurrents peuvent mettre des jours, voire des semaines, avant de publier un nouveau rapport, le temps de récupérer les données, de se les envoyer par mail, … un cauchemar !
Au final, cette volonté d’unité de langage et de cadre peut paraitre rigide mais elle ouvre la porte à une liberté individuelle immense et à une efficacité collective incomparable.

In fine, recommanderiez-vous cette formation ?

Si vous avez des personnes qui sont confrontées à une prolifération de bouts de codes, souvent dans des langages différents, souvent excel-centriques, de reporting, d’organisation de données, de dossiers, de communication, toute une chaine de publication autour de la donnée pour prendre vos décisions, et bien oui, complètement !

Il est incroyablement efficace de faire ça dans un environnement R/RSConnect/Shiny/Rmarkdown/R packages, et ThinkR est compétent sur tous ces aspects. Avec le recul, je trouve que le coût pour la mise en œuvre est paradoxalement, assez bas… Parce que dès qu’on interroge n’importe quel consultant ou spécialiste pour une application de data science, le ticket d’entrée est tout de suite à 50.000 €. Nous avions demandé des devis pour outsourcer notre reporting : aucune proposition à moins de 30.000€ (15.000 € d’onboarding et 20.000 €/an), et là les choses se compliquent, parce que les data tu ne sais pas si tu les donnes, comment ils les récupèrent, brutes ? nettoyées ? tu perds la main sur la mise en forme, tu perds la main sur un nombre de choses très importantes pour ton métier.

Il y a une petite année d’amortissement, mais là, nous avons en quelque sorte acheté l’autonomie et la capacité à créer. Aujourd’hui on développe sur RStudio Server depuis lequel nos données sont accessibles, le déploiement se fait sur Connect… Tout cet environnement est hébergé sur Azure. C’est une machine de guerre que nous avons entre les mains avec un énorme confort de travail et une cohésion du tout qui facilite l’onboarding des recrues : il y a suffisamment de connaissances communes pour qu’elles soient immédiatement absorbées dans notre culture.