Applied Data Science

API0057

Introduction aux techniques d'application de la sciences des données, et de l’ingénierie des données.

Responsable de l'Api

Jean-Benoist Leger

Autres intervenants

  • Florent Chehab – GI UTC FDD 2019 – (Full Stack) Data Scientist @ Qomon

  • Julien Jerphanion – GI UTC FDD 2019 – Research Software Engineer @ INRIA & scikit-learn Core Developer

Résumé

Nous vous proposons une API pour découvrir (ou redécouvrir) le monde de l'Applied Data Science au travers des thématiques de Data-Engineering et de Software-Engineering avec un fil rouge autour des donnés géographiques.

Quelques mots-clés pour vous donner envie ou attiser votre curiosité : Git, Linux, SSH, Python, tests, Structures de données (oui ça sert vraiment dans la vraie vie et pas que en NF16), Haute-Volumétrie, traitements en streaming, Map Reduce / Apache Spark, Dagster, sans oublier PostgreSQL et PostGIS.

Il va de soi que vous ne serez jamais des experts de tout cela en 5 jours, mais il s'agit bien de vous donner des billes et des réflexes pour votre future vie professionnelle.

Cerise sur le gâteau, nous devrons être entre 2 et 3 encadrants à temps plein pour vous accompagner tout au long de cette API avec un mix d'un enseignant-chercheur et d'anciens UTCéens depuis quelques années dans la vie professionnelle. On est très motivés, venez si vous l'êtes aussi !

Typologie Api

Modalité : #Stage

Format : #Enseignant #Chercheur #Professionnel

Complément : #Cours #Atelier

Domaine

Applied Data-Science (data-engineering)

Public visé

Cette API s'adresse aux étudiantes et étudiants amenés à intervenir dans le domaine de l'ingénierie des données, et en priorité aux étudiants de fin de cursus. Tout autre candidature motivée sera bien entendue étudiée.

Il est fortement conseiller de maîtriser les rudiments de Git, Linux, Python et des bases de données relationnelles.

Objectifs pédagogiques

Objectif de l’Api : L'objet de cette Api est de fournir aux étudiants des connaissances et compétences de base dans la mise en œuvre du traitement de données, en particulier dans le cas de données massives.

Objectifs spécifiques :

  • Savoir se repérer avec techniques modernes de traitement de données (Python, Spark, Streaming, SQL)

  • Initiation au développement computationnellement efficace d'algos de traitements de données

  • Découverte d'outils d'organisation de pipeline de calculs et d'observabilité

Objectifs transversaux :

  • Mise en pratique de bonnes pratiques de dev (git, ssh, tests, etc.)

Programme

Le fil rouge de cette API tournera autour du traitement de données géographiques.

Lundi

  • Bonnes pratiques de dev (partie 1)

    • git

    • ssh

  • Bonnes pratiques de dev efficace

    • Mises en œuvre de calculs scientifiques efficaces

    • Complexité en temps & complexité en mémoire

    • Technique d'optimisation algorithmique & structures de données

Mardi

  • Bonnes pratiques de dev (partie 2)

    • Découverte pratique de pytest, TDD

  • Deep dive PostgreSQL

    • Indexes

    • Query Plan

    • Tuning de configuration

    • Analyse / Vaccum

    • (bonus) clusterisation / pgbouncer / connection pooling

Mercredi

  • Traitement de données en streaming

  • Map / Reduce & Spark (partie 1)

Jeudi

  • Map / Reduce & Spark (partie 2)

  • Découverte de Dagster

Vendredi

  • Projet en groupe

Évaluation

  • 1 mini-QCM tous les matins

  • Projet sur le dernier jour

Inter-semestre

E22

Période

27/06-01/07

Capacité d'accueil

40

Lieu de déroulement

À l'UTC, en présentiel.

ECTS

2

Temps de travail étudiant

Travail demandé pendant l'Api : 50h