AccueilBlogTest technique Airflow
Guide recrutement data

Test technique Airflow : ce qu'on evalue en entretien Data Engineer

Airflow orchestre des milliers de pipelines data. Concevoir un DAG robuste n'est pas la meme chose que lire un DAG existant.

Data Builder·Juin 2025·7 min de lecture·Data Engineer

Airflow orchestre des milliers de pipelines data en production. Concevoir un DAG robuste n'est pas la meme chose que lire un DAG existant.

1Comprendre un DAG

Question discriminante

Qu'est-ce qu'un DAG dans Airflow ? Pourquoi doit-il etre acyclique ?

with DAG(dag_id="pipeline", schedule="0 6 * * *", start_date=datetime(2025,1,1), catchup=False) as dag: task_a >> task_b >> [task_c, task_d] >> task_e
  • start_date et catchup — comportement du backfill automatique
  • DAG runs vs task instances

2Operateurs et hooks

Question discriminante

Difference entre un operateur et un hook ?

  • PythonOperator / BashOperator — les plus courants
  • Sensors — attendent une condition (fichier, table, temps)
  • Providers — packages AWS, GCP, dbt, Spark

3Dependances et scheduling

Question discriminante

Comment une tache attend-elle la completion d'un DAG externe ?

  • ExternalTaskSensor — poll regulier, consomme un slot
  • TriggerDagRunOperator — plus efficace mais couplage fort
  • XComs — passer des donnees entre taches

4Production : retry et alertes

Question discriminante

Un DAG critique echoue a 3h du matin. Qu'avez-vous mis en place ?

  • on_failure_callback — alerte Slack ou PagerDuty
  • SLA Miss — alerte si une tache depasse son temps maximum
  • Pools et queues — limiter la concurrence

5TaskFlow API et Dynamic tasks

Question discriminante Senior

Qu'est-ce que la TaskFlow API ? En quoi simplifie-t-elle les DAGs ?

  • @task decorator — syntaxe Python native Airflow 2.0+
  • Dynamic task mapping — taches dynamiques selon les donnees
  • Dataset-driven scheduling — declencher quand un dataset change

6Grille par niveau

NiveauMaitrise attendueSignal GONO-GO
JuniorLire un DAG, PythonOperator, scheduling cronComprend catchup et backfillConfond DAG et task
ConfirmeSensors, XComs, Variables, retry, providersA configure des alertes, ExternalTaskSensorN'a jamais configure de retry
SeniorTaskFlow API, dynamic tasks, SLAs, monitoringMonitoring complet en prod, SLAs configuresNe connait pas la TaskFlow API
LeadArchitecture multi-DAGs, dataset schedulingA defini les standards de DAGs equipeNe peut pas expliquer les compromis de couplage

Vous recrutez un profil data ?

Premier entretien gratuit. Rapport GO/NO-GO sous 48h.

Tester gratuitementReserver un appel