Sur FastAPI à fort trafic, la candidate décrit un incident réel et sa résolution, ce qui donne du poids à ses réglages de workers et de cache. Sur les microservices Kafka, l'ordre par clé et l'évolution compatible des formats sont acquis. L'analytics temps réel, les profils MongoDB et l'API de recommandation sont traités avec justesse mais sans retour d'expérience. L'usage de l'IA est méthodique.
La pièce à transmettrePart telle quelle chez votre client : sans score, sans verdict, sans signal.
Revelyum
Rapport d'entretien technique
Établi pour Nordlys Conseil
Développeur API Python, plateforme média streaming (H/F)
· Jade Moulin · 16/10/2026
Synthèse
Jade vient de l'IA documentaire mais maîtrise les mécanismes d'asyncio : elle raconte comment un profileur lui a montré un appel bloquant qui immobilisait toute l'API. Elle connaît Kafka et les formats d'événements par un pipeline d'indexation. L'analytics en temps réel et MongoDB restent des réponses de principe.
Détail par exigence
FastAPI à fort trafic
indispensableSolide
Règle les workers à la mesure, repère les appels bloquants dans la boucle asyncio et protège l'API par limitation et cache invalidé.
Microservices communiquant par Kafka
indispensableSolide
Connaît le producteur et la consommation, protège l'ordre par utilisateur et fait évoluer les formats sans casser les lecteurs.
Analytics temps réel
Solide
Propose une approche correcte par compteurs et tranches de temps, mais sans pratique en production.
Profils utilisateurs dans MongoDB
Solide
Sépare le profil de l'historique et indexe la requête fréquente, en disant que MongoDB n'a pas été pratiqué.
API de recommandation
Solide
Prévoit un repli à délai borné et une personnalisation par genres, et propose un groupe témoin pour mesurer.
Usage de l'IA
indispensableSolide
Délègue les tâches répétitives à l'assistant avec du contexte, relit chaque modification et connaît un piège précis de ses propositions.
Points d'appui
Diagnostic précis d'un appel bloquant dans la boucle asyncio, trouvé avec un profileur.
Limitation de débit et cache avec invalidation à la réindexation.
Aucune pratique de l'analytics en temps réel en production.
MongoDB connu seulement en théorie, expérience sur PostgreSQL.
Sujets abordés
FastAPI à fort trafic · Microservices communiquant par Kafka · Analytics temps réel · Profils utilisateurs dans MongoDB · API de recommandation · Usage de l'IA
Entretien conduit en autonomie par le candidat, réponses transcrites puis analysées.
L'évaluation finale appartient au recruteur : Revelyum n'émet aucune décision automatisée.
En clair
Oui, il peut faire ce job
Jade répond avec méthode et part de cas qu'elle a vécus. Elle est à l'aise sur les performances d'une API Python et plus en retrait sur les statistiques en direct.
Ses points forts
Résout les lenteurs par la mesure
Explique un incident réel
Utilise l'assistant avec rigueur
À creuser en entretien
Peu d'expérience des statistiques en temps réel
Savoir-être
Dire ce qu’on ne sait pas
Dit clairement qu'elle n'a pas fait d'analytics ni de MongoDB en production.
S'intégrerait vite à une équipe API et aurait besoin d'un accompagnement sur l'analytics.
Détail par exigence
FastAPI à fort trafic
indispensableSolide · 8/10
Nombre de workers Uvicorn · 8/10Réglage ajusté par mesure.un worker Uvicorn par cœur dans un conteneurRéponse
R1
Appels concurrents avec asyncio · 8/10Piège vécu, trouvé au profileur et corrigé.un appel bloquant dans la boucleRéponse
R1
Limiter un client trop bavard · 8/10Limitation par client avec délai de reprise.on limitait par clé d'API avec un compteur en mémoire partagéeRéponse
R2
Mettre en cache une réponse de recommandation · 8/10Cache cohérent avec la requête et invalidé à la réindexation.une clé qui contient les paramètres de la requêteRéponse
R2
Microservices communiquant par Kafka
indispensableSolide · 7,3/10
Produire un événement de visionnage · 7/10Clé choisie pour l'ordre, déduplication prévue.l'identifiant de l'utilisateur comme clé, pour garder l'ordre de ses événementsRéponse
R4
Groupes de consommateurs · 7/10Indépendance des services par groupe.Chaque service a son propre groupe de consommateursRéponse
R5
Faire évoluer le format d'un événement · 8/10Évolution compatible vérifiée par un registre.j'ajoute des champs optionnels avec une valeur par défautRéponse
R5
Analytics temps réel
Solide · 8/10
Compteurs de vues dans Redis · 8/10Mécanisme juste, jamais exploité en production.j'incrémenterais un compteur dans Redis par titreRéponse
R6
Agrégation par fenêtre de temps · 8/10Fenêtres par clé horodatée.une clé par tranche de temps pour obtenir des fenêtresRéponse
R6
Exactitude ou rapidité des chiffres · 8/10Compromis annoncé et complété par un recalcul différé.un chiffre un peu en retard plutôt qu'exactRéponse
R6
Profils utilisateurs dans MongoDB
Solide · 7,7/10
Document profil et historique · 7/10Modèle simple et lisible.un document de profil avec les préférencesRéponse
R7
Historique qui grossit sans fin · 8/10Croissance maîtrisée.l'historique dans une collection à part pour que le document ne grossisse pas sans finRéponse
R7
Index pour les requêtes fréquentes · 8/10Index aligné sur la requête courante.un index sur l'identifiant de l'utilisateur et la dateRéponse
R7
API de recommandation
Solide · 7/10
Réponse de repli si le moteur tarde · 7/10Repli concret avec délai maximal.une liste de repli, par exemple les titres les plus regardés du momentRéponse
R8
Personnaliser par profil · 7/10Personnalisation par l'historique.les genres déjà regardés du profil comme filtre ou comme vecteurRéponse
R8
Mesurer l'effet d'une recommandation · 7/10Mesure comparative, mais sans expérience réelle.un groupe qui reçoit les recommandations et un groupe témoinRéponse
R8
Usage de l'IA
indispensableSolide · 7,8/10
S'il code avec un assistant IA (Copilot, Cursor, Claude Code, ChatGPT…) : quelles tâches de développement il lui confie, et lesquelles il garde · 8/10Tâches déléguées clairement nommées.Je lui confie les modèles Pydantic, les tests et les migrations répétitivesRéponse
R3
Son workflow avec l'assistant : découper la demande, lui donner le contexte (fichiers, conventions), tenir la taille du contexte et le coût en tokens, itérer · 8/10Contexte fourni à l'assistant.avec les fichiers voisins et nos conventions dans le contexteRéponse
R3
Comment il relit, teste et corrige le code que l'assistant produit · 7/10Relecture et tests systématiques.Je relis chaque diff, je lance les testsRéponse
R3
Ce qu'il ne confie jamais à l'assistant : données confidentielles, sécurité, décisions d'architecture, cas où il s'est trompé · 8/10Limites de confidentialité posées.Je ne lui donne jamais les clés ni les données des clientsRéponse
R3
Un cas vécu où un assistant IA a changé son code ou son délai, et ce qu'il en a retenu · 8/10Erreur attrapée grâce à son expérience.il m'a proposé un client HTTP synchrone dans une route asyncRéponse
R3