Préparation Dév Full Stack · Java · Spring · Git · DevOps · Craft · Agilité · Maven
49 fiches pour préparer vosentretiens techniques
Un cahier de révision corrigé au stylo : les mauvais exemples barrés en rouge, les bons cochés en vert, et une interro à la fin de chaque fiche pour vérifier que c'est acquis.
NouveauSimulation d'entretien technique →Craftmanship
Code de qualité, SOLID, TDD, design patterns et architecture
- 01Code de QualitéLes 4 piliers d'un code de qualité — maintenable, testable, lisible et extensible — illustrés par des exemples Java.
- 02Bonnes PratiquesRègles fondamentales pour un code propre : nommage, KISS, DRY, exceptions, formatage et chasse aux magic numbers.
- 03Code ReviewQue regarder lors d'une Pull Request : checklist de revue et exemples de feedback constructif.
- 04Principes SOLIDLes 5 principes fondamentaux de la programmation orientée objet : SRP, OCP, LSP, ISP et DIP, avec exemples Java.
- 05Design PatternsLes 3 types de design patterns — création, structurel, comportemental — avec exemples pratiques en Java.
- 06Test Driven Development (TDD)Développement piloté par les tests : le cycle Red, Green, Refactor illustré avec une calculatrice JavaScript et Jest.
- 07Behavior Driven Development (BDD)Le BDD transforme les exigences métier en spécifications exécutables en langage naturel (Gherkin), compréhensibles par les devs, la QA et le métier.
- 08DDD + Architecture Hexagonale + Clean ArchitectureTrois approches complémentaires — DDD, architecture hexagonale et Clean Architecture — pour isoler le domaine métier et construire des applications maintenables.
- 09RefactoringAméliorer la structure du code sans changer son comportement observable : quand refactoriser, le rôle des tests et les techniques essentielles.
- 10Pair ProgrammingDeux développeurs, un clavier : les rôles Driver/Navigator, quand pairer, les bénéfices, les défis et les variantes du pair programming.
- 11Architecture MicroservicesDécomposer une application en services autonomes : stratégies de découpage, patterns de communication et patterns essentiels (API Gateway, Circuit Breaker, Saga).
Git
Merge, rebase, workflows et gestion des environnements
- 01Merge vs RebaseDeux approches pour intégrer les changements d'une branche : merge qui préserve l'historique, rebase qui le linéarise.
- 02Fetch vs PullComprendre la différence entre récupérer les changements du dépôt distant (fetch) et les intégrer automatiquement (pull).
- 03Reset, Revert, Cherry Pick & StashCommandes avancées pour gérer l'historique : annuler des commits, en copier un précis ou mettre son travail de côté.
- 04Squash & AmendNettoyer et modifier l'historique des commits : fusionner plusieurs commits en un seul et retoucher le dernier commit.
- 05Workflows GitGitFlow vs Trunk-based Development : deux organisations des branches, de la structure stricte au flux continu.
- 06Gestion des EnvironnementsStratégies de branches et de déploiement par environnement : branches dédiées, tags de release ou feature flags.
DevOps
CI/CD, déploiement, secrets, monitoring et alerting
- 01Pipeline CI/CDLes étapes essentielles d'un pipeline CI/CD automatisé, du checkout du code au déploiement Kubernetes, avec un exemple GitLab CI complet.
- 02Architecture DevOpsArchitecture microservices avec API Gateway, IDP, communication REST/Kafka et services distribués.
- 03DéploiementDéploiement GitOps avec ArgoCD sur Kubernetes : workflow, configuration et avantages de l'approche déclarative.
- 04Gestion des SecretsCentralisation et sécurisation des secrets avec HashiCorp Vault : politiques, authentification et intégration Kubernetes.
- 05MonitoringSurveillance des applications et de l'infrastructure avec Prometheus, visualisation Grafana et Alert Manager.
- 06AlertingConcevoir de bonnes alertes : symptômes plutôt que causes, golden signals, sévérités, seuils avec durée et lutte contre la fatigue d'alerte.
Java
Versions LTS, POO, collections, génériques et exceptions
- 01Versions Java LTSGuide des versions Long Term Support de Java (8, 11, 17, 21) et de leurs nouveautés majeures.
- 02Migration JavaStratégies, outils et bonnes pratiques pour migrer une application entre versions de Java.
- 03POO en JavaProgrammation Orientée Objet en Java : les 4 piliers, classes et objets, concepts avancés.
- 04Collections JavaLe framework des collections Java : List, Set, Map, leurs implémentations et leurs performances.
- 05Mots-clés JavaGuide des mots-clés essentiels de Java : modificateurs d'accès, static, final, abstract, interface, synchronized et volatile.
- 06Strings & ImmutabilitéImmutabilité des String en Java, String Pool, StringBuilder vs StringBuffer et méthodes essentielles de manipulation de chaînes.
- 07Génériques (Generics)Type safety et réutilisabilité du code avec les génériques Java : classes et méthodes génériques, wildcards, règle PECS et type erasure.
- 08ExceptionsGestion des erreurs en Java : hiérarchie des exceptions, checked vs unchecked, try-catch-finally, try-with-resources et exceptions personnalisées.
Spring
Core, Boot, MVC, Data, Security et l’écosystème Spring
- 01Spring Core (IoC/DI)Inversion de contrôle et injection de dépendances : les deux mécanismes fondateurs du conteneur Spring.
- 02Spring BootFramework pour créer des applications Spring rapidement grâce à l'auto-configuration, aux starters et au serveur embarqué.
- 03Spring MVCFramework web basé sur le pattern Model-View-Controller : architecture, @Controller et @RestController.
- 04Spring DataSimplification de l'accès aux données : modules Spring Data, entités JPA et repositories avec requêtes dérivées.
- 05Spring SecurityFramework de sécurité pour les applications Spring : authentification, autorisation et configuration de la SecurityFilterChain.
- 06Spring CloudLes outils Spring Cloud pour construire des systèmes distribués : service discovery, load balancing, circuit breaker, API gateway, configuration centralisée et tracing.
- 07Spring TestingLe framework de test intégré de Spring : tests unitaires avec Mockito, tests d'intégration avec @SpringBootTest et slice tests avec @WebMvcTest et @DataJpaTest.
- 08Spring BatchLe framework de traitement par lots de Spring : architecture Job/Step/Chunk et exemple complet reader-processor-writer avec listener.
- 09Spring Boot ActuatorMonitoring et gestion des applications Spring Boot : endpoints health, metrics, info, et intégration avec Prometheus, Grafana et la stack ELK.
- 10Spring AOPLa programmation orientée aspect avec Spring : aspects, pointcuts, types d'advice et exemple complet d'aspect de logging.
Agilité
Scrum, user stories, cérémonies et estimation
- 01Fondamentaux de l'AgilitéLe Manifeste Agile, la comparaison entre cycle en V et approche agile, et les principales méthodes : Scrum, Kanban, XP.
- 02Équipe & SprintLes trois rôles Scrum (Product Owner, Scrum Master, Development Team), le déroulement d'un sprint et la vélocité d'équipe.
- 03User StoriesLe format « En tant que… je veux… afin de… », les critères INVEST et la hiérarchie Thème > Epic > User Story.
- 04Cérémonies AgilesLes quatre événements Scrum — Sprint Planning, Daily Scrum, Sprint Review et Sprint Retrospective — avec leurs objectifs, formats et anti-patterns.
- 05Estimation & VélocitéStory points, échelle de Fibonacci, Planning Poker, calcul de la vélocité et autres techniques d'estimation agile.
Maven
Cycle de vie, dépendances et plugins
- 01Cycles de Vie MavenLes trois cycles de vie de Maven (default, clean, site) et les phases principales du cycle default, de validate à deploy.
- 02Structure des DépendancesLes coordonnées Maven (GAV) et la structure complète d'une dépendance dans le POM : scope, type, classifier, exclusions.
- 03Plugins MavenLe fonctionnement des plugins Maven (goals, phases), les plugins core essentiels et leur configuration dans le POM.