Le début d’une année est un moment charnière car très souvent on se projette dans l’avenir. On imagine ce qu’on aimerait apprendre, ce qu’on aimerait voir, ce qu’on aimerait faire et le plus important, ce qu’on aimerait devenir.
Rien de mieux que d’établir une roadmap pour atteindre ses objectifs.
Tu es peut-être complètement novice sur les sujets data. Ou alors, tu es déjà sur la bonne voie pour devenir Data Engineer mais tu as besoin d’informations claires pour savoir ce qu’il faut prioriser dans le vaste ensemble des technologies big data. Tu souhaites concentrer tes efforts sur des compétences spécifiques qui t’ouvriront les portes de la data. J’ai préparé LA roadmap à suivre pour progresser pas à pas en data engineering.
SQL
SQL (Structure Query Language) est un langage qui permet de communiquer avec les bases de donnée. C’est pour moi la compétence de base pour toute personne qui travaille dans la data. Grâce à SQL, on peut créer une table, y insérer des données, récupérer des données. On peut également calculer des indicateurs très complexes.
Considère cet apprentissage comme un muscle que tu souhaites développer. Il te faut une bonne alimentation et des exercices physiques. L’alimentation ici c’est toute la théorie que tu devras ingérer et les exercices constituent la mise en pratique ce que tu auras appris en te frottant à des problèmes concrets. Je te recommande leetcode pour la résolution d’exercices en SQL.
Python
Un Data Engineer est amené à programmer. Il peut par exemple devoir créer des pipelines de données pour faire transiter la donnée d’un point A à un point B.
En terme de langage de programmation, Python est aujourd’hui le plus demandé sur le marché. Il a également l’avantage d’être facile à apprendre car sa syntaxe est agréable à lire et à écrire.
Si tu n’as aucune connaissance en langage de programmation, je te conseille de commencer à t’y mettre en apprenant Python.
Spark
Dès que tu auras appris SQL et Python, tu seras prêt pour attaquer l’une des technos les plus caractéristiques du big data, Apache Spark. Spark est un framework (outil) de calcul distribué qui permet de traiter un grand volume de données de manière optimale.
Tu pourras comprendre le fonctionnement de Spark et apprendre à l’utiliser. Tu te serviras de ce que tu auras appris dans les 2 premières sections car Spark peut être utilisé avec SQL, on parle de SparkSQL mais également avec Python, PySpark. Je te conseille d’utiliser les données open-source (gratuites) sur internet pour créer des projets de traitement de données en Spark qui valoriseront ton profil.
Airflow
L’un des enjeux du data engineering est de traiter de gros volumes de données, rapidement, à moindre coût, en utilisant peu de ressources. Soit !
Mais comment est-ce qu’on organise ces traitements ? Comment est-ce qu’on s’assure que la chaine de traitements suit le cheminement qu’on souhaite même lorsqu’une étape tombe en erreur, même lorsque la fréquence est particulière (exemple : tous les lundis du mois) ?
Pour arriver à orchestrer les jobs de traitement, l’un des outils utilisé sur le marché est Apache Airflow. Airflow est une plateforme de planification et d’organisation de flux de données. Puisqu’il est open-source, tu pourras l’installer et l’intégrer dans le projet que tu auras commencer en Spark pour apporter cette brique d’orchestration dans ton projet initial.
Cloud - GCP
Avoir une composante cloud dans sa boite à compétences est la cerise sur le gâteau de sa formation en Data Engineering. Le cloud computing fournit des services de type infrastructure, des applications, des outils de développement ou de stockage de données. Les 3 principaux clouds sur le marché actuellement sont :
AWS - Amazon Web Service
Azure : le cloud de microsoft
GCP - Google Cloud Platform
Personnellement, je travaille avec GCP depuis des années. C’est donc celui qui m’est le plus familier. Tu peux très bien choisir n’importe lequel des clouds que j’ai cités pour te faire la main. Comme on dit souvent si tu connais un cloud, tu peux facilement t’approprier un autre parce que les principes restent les mêmes.
Sur cette compétence cloud, je te conseille dans un premier temps de comprendre de manière superficielle et générale comment ça fonctionne. Tu peux également passer la certification la plus basique que le cloud que tu auras choisi propose. Ne va pas plus en profondeur car tu auras l’occasion de le faire en entreprise et ça sera plus formateur à ce moment-là.
Voilà !
Nous sommes arriver au bout de la roadmap que je te propose. Je ne le dirai jamais assez, prends le temps de maitriser chaque sujet en travaillant sur un projet from scratch (de zéro) avec des outils open-source. Dans plusieurs mois, tu verras les progrès que tu auras réalisés.
Hello Perrine,
Je lis et je bois tes "paroles",
Quand tu parles de SQL dans lequel on peut y mettre nos données de projets par exemple à des fins de présentation aux futurs employeurs,
tu parles de mettre des nos données dans un PhpMyAdmin et de coder en php un site de nos projets?
Du coup, il faut hébergement notre site et nom de domaine et le payer sur OVH par exemple ?
(C'est tout ce que je connais et ai utilisé)
En cas dis moi tout 😉
Merci