La parole au data engineer

kevin

Pauline : Bonjour Kevin Razavet. Vous êtes data engineer chez Blue DME.

 

Pauline : Présentez-moi votre parcours avant de rentrer chez Blue DME.

 

Kevin : J’ai fait une classe préparatoire intégrée dans une école d’ingénieurs, l’EISTI (Ecole internationale des sciences du traitement de l’information). Je me suis spécialisé en informatique. En dernière année, j’ai fait un double diplôme en Big Data en Ecosse, à Herriot-Watt University. J’ai réalisé également un stage de développeur sur une application J2EE, pendant cinq mois entre la deuxième et la troisième année chez Atos, à Bordeaux, un site de gestion de stages des formations prévention et sécurité pour l’INRS. Suite à ces expériences académique et professionnel, j’ai choisi de rejoindre Blue DME.

Pauline : Pourquoi avez-vous choisi de rejoindre Blue DME ?

 

Kevin : Tout d’abord, je n’ai pas beaucoup apprécié mon expérience chez Atos, qui était une trop grosse structure à mon goût (plus de 75 000 employés). Je voulais essayer de travailler dans une plus petite structure et ce d’autant plus que j’avais eu des retours de mes camarades en 3ème année qui avaient adoré leur stage en start-up, pour la prise de responsabilités et d’initiatives qu’ils avaient eu. Je suis très satisfait car j’apprends bien plus chez Blue DME que chez Atos.

De plus, le concept de Blue DME m’intéressait beaucoup. Le premier contact dans l’entreprise était Mathieu Despriee qui savait répondre à toutes les questions techniques que je me posais. Je cherchais à trouver une entreprise qui permettait de parfaire mon expérience technique. C’est pourquoi j’ai été particulièrement comblé.

J’avais vraiment envie de rentrer dans une start-up qui venait d’être fondée pour suivre le projet depuis son lancement.

Enfin, être dans une petite entreprise me permet de naviguer entre les différents métiers de la data, en travaillant au quotidien avec des data scientists et des data viz specialists.

 

Pauline : Vous devez être habitué à travailler en groupe chez Blue DME. Comment se déroule ce travail de groupe ?

 

Kevin : Cela est très intéressant. J’avais déjà vu, avant d’intégrer Blue DME, la méthodologie agile qui permet de gérer des projets en équipe. Nous l’avons appliqué, dès mon arrivée chez Blue DME avec le principe des backlogs, sprints et stand-ups. Tous les jours, nous suivons l’évolution de l’équipe. De temps en temps, nous faisons aussi du pair coding que j’apprécie beaucoup. Nous sommes deux sur la même machine. Nous voyons comment se comporte un autre employé en situation réelle. Nous sommes plus productifs car nous détectons plus rapidement les erreurs et nous communiquons plus facilement. Lorsque nous faisons des réunions pour discuter d’une solution d’architecture logicielle, nous pouvons apporter notre propre opinion et comprendre les avis des autres. Cela est une expérience bien enrichissante.

 

Pauline: L’ambiance est-elle sympathique ?

 

Kevin: L’ambiance est très sympa. De toute façon, je suis un petit rieur et mes blagues sont bien prises. Rires. L’expérience chez le client sur laquelle nous reviendrons plus tard est très bonne à prendre. L’avantage de cette start-up est que Mathieu et Julien (ancien directeur Big Data) ont acquis une grande expérience professionnelle dans des bonnes entreprises, comme Octo par exemple. Je suis également très souvent amené à travailler avec eux. J’apprends donc beaucoup plus techniquement.

 

Pauline : Quel est votre rôle plus précisément ?

 

Kevin : Je suis Big data engineer. Je développe des solutions Big Data, je traite des gros volumes de données dans un temps limité. On utilise Spark et des bases de données NoSQL. Je fais des tests et du développement.

 

Pauline : En quoi consiste le métier de data engineer plus largement?

 

Kevin: Je travaille avec des gros volumes de données, en utilisant des technologies issues du Big Data dont Spark principalement et des bases de données NoSQL, sur des infrastructures qui doivent être distribués comme Hadoop. Chez un de nos clients, nous avons développé une solution full Amazon avec EMR et du S3 par exemple.
Big Data engineer consiste à tester et à maintenir son code, en somme à construire des solutions prenant en compte de gros volumes de données.

 

Pauline : Quels sont les autres outils/technologies que vous utilisez ?

 

Kevin : J’utilise massivement Spark pour le traitement de données, MongoDB et du relationnel pour le stockage. Souvent, nous stockons les très gros fichiers sur Amazon Web Services S3. J’ai également vu des technologies comme Air Flow qui permet de planifier et ordonnancer des jobs (e.g. Spark), des outils d’Amazon comme SQS, S3, EC2, Redshift, VPC et EMR. En termes de programmation, il faut savoir faire de la programmation orientée objet (Scala et Java) et du scripting en Python.

 

Pauline : Quelle est la journée type de Kevin ?

 

Kevin : Rires. J’ai deux journées types : en développement produit chez Blue DME et chez le client.

Tout d’abord, chez Blue DME, en arrivant le matin, nous faisons un stand-up pour savoir où en est le projet et quelles sont les futures orientations. Cette réunion se fait à la fois avec les data scientists, les data engineers et le designer UX. Nous sommes vraiment au courant de ce que font les différents membres de l’équipe. Au cours de la journée, je fais beaucoup de tests car nous réalisons du TDD (test driven development) : nous définissons les tests et en fonction de ces derniers, nous choisissons la bonne solution logiciel. Le TDD est très important pour maintenir le code et éviter que le code beugue. Cela est principalement, pour ma part, en Scala et en Spark, car je travaille sur le core. Je parse des fichiers CSV, je les analyse et les stocke sur Amazon S3 avec des formats plus compressés et plus faciles à lire pour Spark. Tous les traitements de données se font en Scala et en Spark et sont testées avant d’être reliées au TMS.

Chez un de nos clients actuels, nous développons une infrastructure Big Data. Je m’occupe de l’infrastructure du projet et du traitement des données. Le but est d’amener toutes leurs données issue de leur BI sur notre solution Big Data. Puis, comme ces données sont concentrées sur une même plateforme, elles peuvent être traitées au sein d’une même application Django. Généralement, on essaie de faire des stand-ups avec des membres de l’équipe de notre client. Cela est intéressant car nous travaillons avec des personnes de milieux différents (la BI, le développement PHP, les architectes). Nous nous répartissons les tâches puis nous travaillons !

Pauline: Quels sont les conseils que vous donneriez à la génération future qui souhaite devenir data engineer ?

 

Kevin  : Prendre le temps de bien choisir son entreprise est, selon moi, essentiel. Il faut vraiment réfléchir sur le métier que l’on a envie de faire, ce qui nous passionne. Il faut étudier tous les cas avant de se lancer !
Il faut avoir une première expérience en développement logiciel orienté objet, savoir programmer et faire des tests. Il faut prendre le temps d’apprendre, ne pas se précipiter ! Pour apprendre, il faut écouter et cela ne vaut pas que pour le métier de data engineer !

 

Pauline: Merci beaucoup Kevin pour cet agréable moment passé en votre compagnie.

Kevin: Merci beaucoup Pauline !