AccueilBlogTest technique Python data
Guide recrutement data

Test technique Python data : ce qu'on evalue en entretien

Python est la lingua franca de la data. Entre un script Jupyter et un module de production, l'ecart est considerable.

Data Builder·Juin 2025·8 min de lecture·Data Engineer · Data Scientist

Python est la lingua franca de la data. Entre un script Jupyter et un module de production robuste, l'ecart est considerable.

1Bases du langage

Question discriminante

Difference entre liste et tuple ? Entre dictionnaire et set ?

# List comprehension : signal de maturite # Junior result = [] for x in data: if x > 0: result.append(x * 2) # Confirme result = [x * 2 for x in data if x > 0]
  • List comprehensions — syntaxe concise, signal de maturite
  • Type hints — annotations pour lisibilite et mypy
  • try/except — gestion des erreurs, exceptions personnalisees

2Pandas et DuckDB

Question discriminante

Votre script Pandas traite 10M lignes et prend 8 minutes. Vos options ?

  • Vectorisation — operations numpy/pandas plutot que des boucles
  • DuckDB — SQL analytique sur DataFrames, CSV, Parquet
  • Polars — alternative Pandas plus rapide, lazy evaluation

3Programmation orientee objet

Question discriminante

Pourquoi utiliseriez-vous une classe plutot qu'une fonction dans un pipeline data ?

  • Encapsulation — classe pour une connexion BDD avec ses methodes
  • Dataclasses — syntaxe moderne pour les classes de donnees simples

4Qualite et tests

Question discriminante Senior

Comment testez-vous vos pipelines Python ?

  • pytest — tests unitaires, fixtures, parametrize
  • unittest.mock — mocker les dependances externes
  • Black / Ruff — formatage automatique

5Python en production

Question discriminante

Vous exposez un pipeline data via une API REST. Quel framework ?

  • FastAPI — validation Pydantic, doc OpenAPI automatique
  • Variables d'environnement — jamais de credentials dans le code
  • Logging — module logging plutot que print() en production

6Grille par niveau

NiveauMaitrise attendueSignal GONO-GO
JuniorTypes, listes, dicts, fonctions, Pandas de baseList comprehensions, type hints, try/exceptBoucles for sur les DataFrames
ConfirmePOO, modules, DuckDB/Polars, qualite de codeClasses reutilisables, Black, evite les boucles PandasTout dans un script Jupyter, pas de tests
SeniorTests unitaires, CI/CD, FastAPI, loggingA mis en prod une API Python avec CIN'a jamais ecrit de test unitaire
LeadArchitecture modulaire, standards equipeA defini la structure de projet Python equipeNe peut pas expliquer sync vs async

Vous recrutez un profil data ?

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

Tester gratuitementReserver un appel