Si la Data Science et le Data Engineering te semblent nébuleux, cela est totalement normal. Ces deux disciplines sont très larges. Alors que le rôle de data analyst est (en général) assez évident et similaire dans les entreprises, c’est beaucoup moins le cas pour les rôles de data engineer et de data scientist. Si le rôle de data scientist peut être divisé en sous-catégories (Data Scientist generalist, ML Engineer, Research Data Scientist ou encore NLP Research Engineer), c’est également le cas pour les data engineers.
Je vais les diviser en deux types :
- Data Engineer analytics : Ce type de data engineer crée des data pipelines et des ETL/ELT pour fournir des données. Il aide les data analysts et les data scientists à comprendre et à utiliser les données d’un point de vue analytique/science de données. Généralement, ces data engineer, data analysts et data scientists utilisent souvent les mêmes outils (SQL, Python, Spark, R, Tableau, etc…), mais pas avec le même niveau de « précision ».
- Data Engineer backend : Proche du software engineering, ce type de data engineer crée et installe l’infrastructure serveur (généralement cloud) et logiciel afin de traiter les données. Il package une infrastructure en produit afin que les data engineers analytics, data scientists et data analysts puissent utiliser cette plate-forme sous soucis.
Cette réflexion ne me vient pas de nulle part. Premièrement, j’ai eu l’occasion de passer de nombreux entretiens chez les GAFA (FAANG en anglais) aux US au cours de ces quatre dernières années. Une des questions qui revenait souvent était :
« Quel type de Data Engineering aimez-vous le plus ? »
Un recruteur chez AirBnb
Ensuite, en 2017, quand j’ai commencé la transition de développeur BI pour devenir data engineer chez Ubisoft, le rôle était orienté : data engineer analytics. Je collaborais tous les jours avec des développeurs responsables de me fournir une infrastructure de données fiable et je travaillais avec des data analysts et data scientists pour leur fournir des données de qualité.
Dernier élément, en 2018, j’ai lu cet article qui a confirmé ce que j’avais remarqué.
https://www.jesse-anderson.com/2018/06/the-two-types-of-data-engineering/
Cet article a tout simplement confirmé ce que je savais. Ceci dit, juste faire du SQL en tant que data engineer analytics n’est clairement pas suffisant, alors voici un graphique résumant quelques compétences des 2 types de data engineering + la data science :
Si tu travailles dans une petite équipe data, tu pourrais être amené à travailler avec des outils des deux cotés.
Parce que traiter des données de manière fiable, scalable et efficace est très complexe, ces deux spécialités du data engineering doivent collaborer pour fournir au mieux, de la donnée aux autres métiers de l’entreprise.
Et toi, quel type de data engineer es-tu ?