Revolve Inside : Thomas, Machine Learning Engineer

Temps de lecture : 6 minutes

Et si on faisait connaissance ? Devoteam Revolve, ce sont des consultantes et des consultants passionnés par leur métier, des profils et des parcours variés. Dans cette série d’articles, nous vous proposons d’aller à la rencontre de celles et ceux qui font la richesse de l’entreprise, de découvrir leur vision du métier et les challenges techniques qu’ils relèvent.

Après Sergio, Machine Learning Engineer dans l’équipe de Devoteam Revolve Toulouse (lire son interview ici), nous vous présentons Thomas, de l’équipe parisienne.

Thomas

Qu’est-ce qui t’a donné envie de travailler dans la Data Science ?

Je baigne dans l’informatique depuis que je suis très jeune. Mon père avait monté sa boîte de conseil en info, et après mes études en maths et statistiques, j’ai cherché un métier qui puisse allier à la fois le développement et les statistiques. Le métier de Data Scientist commençait à émerger, ce choix s’est imposé assez naturellement.

Au fil de mes 7 premières années, j’ai pu travailler, en tant que Data Scientist, dans différents types de sociétés (conseil, startup, ou encore grand groupe) et me suis spécialisé sur les problématiques de mise en production. C’est ainsi que j’ai décidé de faire la bascule sur le rôle de ML Engineer et ai rejoint Devoteam Revolve fin 2020, pour pousser plus loin mes compétences sur la partie automatisation et infrastructure ML.

Comment as-tu vu évoluer le métier ces 8 dernières années ?

Quand j’ai commencé, TensorFlow ou Pytorch n’étaient pas encore sortis, le Deep Learning n’était pas encore mainstream. On traitait surtout la problématique du volume, c’était le début de la vague Big Data, les débuts de Spark, on mettait encore en place des clusters on-premises. Puis le Cloud a commencé à s’imposer dans les usages, la peur a laissé place à l’expérimentation et on a vu de plus en plus de projets migrer. Chaque fournisseur proposant sa vision et ses outils pour faire du ML, démocratisant au passage l’accès aux ressources de calcul. 

On a vu aussi beaucoup de modèles atteindre difficilement, voire pas du tout, les portes de la production, et quand ils y arrivaient, la nature changeante des données venait rapidement mettre à mal la qualité de leurs prédictions. Et c’est d’ailleurs dans ces derniers échecs que réside la promesse du ML Ops, apporter un cadre et des pratiques permettant de structurer et d’automatiser le cycle de vie d’un pipeline ML de sorte à en faciliter la mise en production.

Est-ce que les nouveaux outils ont contribué à faciliter le métier, ou à déplacer la complexité ?

TL;DR: “Rien ne se perd, rien ne se crée, tout se transforme” – Lavoisier

Je dirais que, souvent, la simplification d’un usage par un outil, cache une complexité sous-jacente, qu’il faudra bien adresser.

À noter qu’avec la notion de service managé proposé par les différents fournisseurs de cloud, cette complexité technique incombe au fournisseur, mais on perd alors un peu en autonomie, ou en contrôle, tout est histoire de compromis et de contexte.

Qu’est-ce qui te motive dans les projets ?

Pour beaucoup, l’équipe, elle peut transformer un projet ennuyeux en un cadre joyeux et challengeant et l’inverse est tout aussi vrai 😅

Une bonne équipe, ambiance, compétences avec une diversité des profils participe grandement à la réussite d’un projet.

Par ailleurs, étant passionné et très curieux, j’aime beaucoup les projets qui vont me pousser en dehors de ma zone de confort.

En tant que conseil, qu’est-ce que tu essaies d’apporter à tes clients ?

L’écoute est très importante. Comprendre ce qu’est le besoin : il peut arriver que le client exprime un besoin, pour autant ce n’est pas forcément son vrai besoin, il peut y avoir un décalage, une difficulté à l’exprimer, ou même à comprendre le problème sous-jacent, ou la manière de l’aborder. Nous devons donc être en capacité d’écouter, et accompagner le client dans la formulation du besoin s’il n’est pas bien identifié, ou dans sa reformulation, puis l’accompagner sur le chemin de la résolution.

Il y a une dimension technique bien sûr, avec la mise en place d’outils, mais pas uniquement. Sur les sujets MLOps, il faut aussi appréhender des nouveaux concepts, parfois dérivés du DevOps, et c’est aussi cela qu’il faut apporter au client, cette acculturation sur ces nouveaux sujets.

Est-ce que ce travail d’acculturation est bien compris, ou accepté ?

Je dirais que cela dépend du client et des raisons qui l’ont poussé à s’intéresser au MLOps. 

En effet, un client avancé sur son usage du Machine Learning aura très certainement déjà rencontré différents problèmes lors de la mise en production de leurs modèles et leur exploitation, et verra assez naturellement les avantages que peut lui apporter le MLOps.

À l’inverse, un client qui veut juste suivre les tendances sans pour autant avoir une maturité ML aura peut-être plus de difficulté à en percevoir l’intérêt et focalisera probablement plus sur les contraintes liées à la mise en place d’une stack MLOps. 

Dit autrement, tant qu’on n’a pas traversé le champ de ronces, on ne voit pas forcément l’intérêt de porter des bottes 😅

Encore une fois, c’est propre à chaque client et il existe des contres exemples dans les deux cas.

Sur quels projets as-tu travaillé chez Devoteam Revolve ?

J’interviens principalement sur la mise en place de plateforme ML et l’adaptation de cas d’usage sur celles-ci. 

Cela peut être du Sagemaker Studio, du Kubeflow, comme lors de ma précédente mission avec mes deux compères Sergio et Jalil (voir l’article sur ce projet), ou encore du full-custom si le besoin client est trop spécifique.

De manière générale, on va toujours avoir une approche de cobuild avec nos clients, de sorte à adapter au mieux à leurs besoins.

Est-ce que Devoteam Revolve a répondu à tes attentes ?

Ayant rejoint Devoteam Revolve pour travailler sur les problématiques MLOps, les débuts ont été un peu difficiles, en raison du manque de maturité du marché et de certains clients à l’époque, mais Revolve a vraiment été à l’écoute et a su s’adapter. 

Aujourd’hui, je suis pleinement épanoui dans ce que je fais et cela correspond exactement à ce que j’attendais, que ce soit sur le plan technique, les missions et la communauté, encore merci 🙏

Quels sont selon toi les prochains enjeux dans la Data et le ML ?

Sur la data, il y a la notion de DataMesh que l’on voit de plus en plus arriver chez les clients.
Sur le ML, je pense que la gestion de projet devrait évoluer : on ne gère pas un projet de ML comme un projet classique. Certes, le ML Ops apporte des outils pour fluidifier la mise en production, mais cela ne fait pas tout, et avoir un Delivery Manager orienté ML sur un projet, pour l’avoir vécu (#Jaja), ça fait une sacrée différence.

Je pense également que la stack technique basse pourrait progressivement disparaître, on commence à le voir avec Sagemaker Studio ou Google Vertex qui masquent une partie de la complexité sous-jacente. On se dirige de plus en plus vers du ML as a Service.

Le mot de la fin ?

Un grand merci à la communauté Revolve, qui a toujours su se montrer présente et disponible, que ce soit pour le boulot ou les afterworks 🍻

Et si comme nous vous êtes passionné et que vous souhaitez bosser sur ces sujets, ou même juste échanger, n’hésitez pas à nous contacter 😊

Commentaires :

A lire également sur le sujet :