- Quelles compétences clés cherchez-vous à transmettre à nos étudiants ?
Concevoir et développer des applications, ce n’est pas seulement écrire des lignes de code et utiliser des outils de développement. La capacité à collaborer, communiquer clairement, faire preuve de rigueur et de curiosité est tout aussi importante pour concevoir des applications qui apportent de la valeur à la société et aux entreprises. Mon objectif est donc de transmettre une véritable culture du développement logiciel, en mettant l’accent sur :
- Les grands principes du développement : KISS, SOLID, DRY, YAGNI, Clean Code
- Les bonnes pratiques DevOps : CI/CD, Infrastructure as Code, tests automatisés
- L’approche Craftsmanship : Développement de qualité, rigueur et professionnalisme
- Comment adaptez-vous votre enseignement aux besoins du monde professionnel ?
Je base mon enseignement sur des projets concrets et des études de cas, inspirés de mes expériences professionnelles. J’essaye aussi d’aborder ce qui m’a manqué pendant ma formation initiale afin d’aider les étudiants à mieux appréhender leur futur métier. L’objectif est d’amener les étudiants à travailler avec les mêmes exigences et méthodes qu’ils rencontreront en entreprise : travail en équipe, code review, workflows Git, CI/CD, gestion des erreurs, documentation…
- Pouvez-vous nous donner un exemple d’activité ou de projet que vous proposez à nos apprenants ?
Généralement, les activités sont orientées sur des cas concrets ou des problématiques rencontrées en entreprise. Je propose aussi des exercices de type Design Systems, comme ceux que l’on peut retrouver dans les processus de recrutement. Pour donner un exemple de projet, j’ai fait travailler les apprenants sur le développement d’un outil qui analyse automatiquement une erreur en sortie d’un programme ainsi que le code concerné afin de le soumettre à une IA et obtenir une solution directement dans un environnement de développement. Cette activité a permis d’aborder plusieurs aspects : le développement, l’introduction à l’IA et son utilité pour les développeurs, ainsi que la satisfaction d’avoir réalisé un projet complet et concret.