Préparer un entretien technique dev : live coding, system design, behavioral
Les entretiens techniques pour postes de dev / data / engineering sont à la fois prévisibles dans la structure et redoutables dans l'exécution. Voici comment se préparer aux 3 formats principaux.
Format 1 : Le live coding
Vous codez en direct devant un examinateur, sur un éditeur partagé (CoderPad, HackerRank, ou simplement Google Doc).
Préparation
- Problèmes "classiques" : LeetCode (50 problèmes Easy + 30 Medium = bon socle)
- Pratique speak-aloud : verbalisez votre raisonnement (le silence inquiète l'examinateur)
- 2-3 algos clés : tri, recherche binaire, BFS/DFS, DP simple, hash tables
Pendant l'entretien
- Reformuler le problème : "Si je comprends bien, vous voulez X, en input Y, en output Z. Y a-t-il des contraintes sur la taille / type / valeurs ?"
- Donner d'abord la complexité de la solution naïve avant d'optimiser
- Tester votre code avec 1-2 cas (input vide, input large, edge case)
- Annoncer la complexité finale : O(n log n) en temps, O(n) en mémoire
Erreurs fatales
- Coder en silence : l'examinateur pense que vous êtes perdu
- Utiliser une fonction sans expliquer ce qu'elle fait
- Pas de test : signal flagrant d'inexpérience
Format 2 : Le system design
Pour les profils mid-senior, vous concevez un système (ex : "design Twitter", "design un raccourcisseur d'URL", "design Uber"). Tableau blanc ou outil de schémas (Excalidraw, Miro).
Préparation
- Lire System Design Interview (Alex Xu, vol. 1 et 2)
- Comprendre les concepts : load balancers, caching (Redis, CDN), DBs (SQL vs NoSQL), sharding, replication, queues (Kafka, SQS), CAP theorem
- 8-10 cas type : URL shortener, news feed, chat, ride-sharing, video streaming, payment, search
Pendant l'entretien
- Clarifier les requirements : QPS attendus, taille des données, latence cible, lecture vs écriture
- Estimer (back-of-envelope) : 100M users × 10 actions/jour = 1B/j ≈ 12k QPS
- High-level architecture : 5-7 boîtes (load balancer, API server, DB, cache, queue, storage)
- Approfondir un sous-système que vous maîtrisez : DB schema, cache strategy, sharding key
- Identifier les bottlenecks et trade-offs (consistency vs availability)
Erreurs fatales
- Sauter directement au schéma sans clarifier les requirements
- Présenter une seule option sans alternative
- Ignorer la scale : "Je mettrais une DB Postgres" → mais avec 1B QPS ?
Format 3 : Le behavioral
Questions sur votre passé pro : leadership, conflits, échecs, prises d'initiative.
Préparation
- Méthode STAR : Situation, Tâche, Action, Résultat
- Préparer 5-7 stories que vous pourrez adapter à différentes questions
- Stories variées : un échec, une réussite, un conflit, une initiative, un apprentissage
Questions classiques
- "Tell me about a time you disagreed with your manager"
- "Describe your most challenging project"
- "Tell me about a time you failed and what you learned"
- "How do you handle conflicts in a team?"
Erreurs fatales
- Réponses trop génériques ("J'aime travailler en équipe")
- Pas de chiffre / impact : c'est ce qui distingue un récit pro d'une anecdote
- Critiquer un ancien employeur : red flag majeur
Le calendrier de prépa
Pour un entretien important :
- 2 mois avant : commencer LeetCode / System Design
- 3 semaines avant : faire 5 mock interviews (Pramp, peers, mentor)
- 1 semaine avant : revoir les bases, dormir
- Veille : pas de nouveau matériel, juste relire vos notes
Aller plus loin
- CV de développeur·se : la structure qui marche
- Préparer un entretien d'embauche : la checklist
- Réussir un entretien en visio
L'entretien technique se prépare en 2-3 mois pour un poste senior. C'est l'investissement le plus rentable de votre carrière dev. Et avant l'entretien, Noryvana optimise votre CV technique pour passer le filtre initial chez les recruteurs tech.