-70% : seulement 347€ (ou 3x116€ en bas de la page) au lieu de 1200€

Garantie exceptionnelle : reçois 1200€ si à la fin de la formation tu trouves que ça ne t'aide pas dans ta carrière !

Tu en as marre :


❌ de devoir passer du temps à débugger plutôt qu'à créer de nouvelles fonctionnalités ?


de faire une modification en apparence toute simple, mais voir que tu as cassé une partie du code qui n'a rien à voir ?


de devoir maintenir des tests qui cassent dès que tu bouges le petit doigt ?


d'attendre des semaines entières avant de pouvoir mettre en production tes changements


d'être déprimé.e d'aller au travail tous les matins à cause de ces problèmes ?


En cherchant des solutions, tu as très probablement déjà entendu parler du Software Craftsmanship :

👉 Dans des posts LinkedIn

👉 Dans des annonces de recruteurs

👉 Dans des vidéos YouTube ou des articles de blog

Tu as donc probablement déjà vu passer les termes :



🤷‍♂️ Tests automatisés

🤷‍♂️ Clean Architecture

🤷‍♂️ Architectures Hexagonale

🤷‍♂️ Test-Driven Development

🤷‍♂️ Domain-Driven Design

🤷‍♂️ Continuous Delivery

🤷‍♂️ Story Mapping

🤷‍♂️ Event Storming

🤷‍♂️ Example Mapping

🤷‍♂️ CQRS

😩 ...


Évidemment, et c'est tout à ton honneur, tu as tenté de t'y mettre toi aussi !


Mais il y a plusieurs gros problèmes !


❌ Tu ne sais pas par où commencer dans cette jungle de concepts et de connaissances à avoir


Tu n'arrives pas à vraiment comprendre comment relier toutes ces notions


Tu vois tellement d'exemples différents qui semblent dire tout et leur contraire que tu es découragé.e


Tu t'es rendu.e compte que ces incompréhensions te font finalement perdre du temps dans ton travail au quotidien


Tu es frustré.e de ne pas réussir à livrer aussi rapidement que tes collègues qui eux ne s'occupent pas de ces pratiques alors que c'est pourtant toute la promesse


Tu t'es cassé.e les dents quand tu as essayé d'appliquer ces pratiques dans le frontend car tous les exemples concernent le backend majoritairement


Tu as peur qu'on te reproche de faire de la "surqualité" ou de "l'overengineering"


Je suis passé par là ! Et j'ai mis des années avant d'arriver à relier toutes ces notions.


🤓 Spoiler alert : j'apprends encore tous les jours !


Et ce qui m'a le plus manqué à l'époque : une roadmap pour aborder ces notions dans le bon ordre.


L'objectif de ce cours est donc de te faire gagner des années d'étude de ces concepts dans ton coin en te proposant une formation précise étape par étape d'apprentissage par la pratique, backend et frontend !


Grâce à ce cours, tu pourras :


✅ Appliquer concrètement, en pratique, les concepts du Software Craftsmanship


✅ Être vraiment agile, du recueil des besoins jusqu'à la mise en production


✅ Construire une application web fullstack rapidement et sereinement grâce au filet de sécurité apporté par les tests


✅ Être à l'aise avec une pratique cohérente du Test-Driven Development pour bénéficier du maximum de ses avantages, sans les inconvénients d'une mauvaise pratique


✅ Déployer beaucoup plus souvent pour obtenir un feedback le plus fréquent possible de tes utilisateurs


✅ Appliquer les patterns stratégiques du Domain-Driven Design pour atteindre une architecture découplée et un maximum de vélocité


✅ Appliquer les patterns tactiques du Domain-Driven Design pour soutenir l'implémentation de ton application de manière efficace et maintenable


✅ Devenir un "vrai" pragmatique, c'est-à-dire que tu sauras quand il est judicieux d'appliquer telle ou telle problématique, sans forcément tout le temps faire "by the books"


"Il n'y a pas de compromis entre la vitesse et la qualité"


Les équipes qui mettent en place les pratiques que l'on verra dans ce cours ont des résultats qui parlent d'eux-mêmes :

44% plus de temps à travailler sur de nouvelles fonctionnalités







source : livre Accelerate

À qui s'adresse ce cours ?




Ce cours est pour toi si tu souhaites développer des applications robustes et maintenables de A à Z grâce à un niveau avancé dans les pratiques liées au Software Craftsmanship.




Si tu es développeur.se junior ne t'inquiète pas, ce cours est prévu pour être suivi étape par étape. La difficulté est croissante, il faudra s'accrocher, mais tu ne seras jamais seul.e !




Si tu es un.e développeur.se plus confirmé.e qui connait déjà un peu le software craftmanship, tu passeras plus rapidement les premiers modules, mais les suivants te donneront probablement du fil à retordre !





Ce que tu vas apprendre dans ce cours


Module 1

Comprendre d'un point de vue général l'importance des pratiques crafts et d'ingénierie logiciel dans notre industrie :

  • L'aspect scientifique de l'ingénierie logiciel
  • L'importance de travailler de façon itérative
  • L'importance de travailler de façon incrémentale
  • L'intérêt de travailler par petites étapes
  • L'importance du feedback
  • L'importance du Continuous Delivery et de la pipeline de déploiement

Objectif de ce module : être au clair sur les différentes notions qui seront abordées dans la formation, et donner des arguments pour convaincre son équipe



Module 2

Comprendre la théorie sur les tests automatisés et l'architecture hexagonale et comment ces pratiques s'inscrivent dans les objectifs définis dans le premier module :

  • comprendre le problème avec la façon dont tout le monde teste son code aujourd'hui
  • l'importance des tests automatisés
  • les différents types de tests automatisés
  • qu'est-ce qu'une bonne stratégie de tests ?
  • qu'est-ce qu'un bon test unitaire ?
  • les tests double (mock, spy, stub, etc.)
  • comment écrire des tests unitaires maintenables
  • l'architecture hexagonale
  • les adapters secondaires de l'architecture hexagonale pour comprendre comment intéragir avec l'extérieur
  • les adapters primaires de l'architecture hexagonale pour comprendre comment piloter notre application

Objectif de ce module : comprendre les différents types de tests, les nomenclatures existantes, et l'intérêt de chaque type de tests


Module 3

On passe à la pratique ! Ce module est un mini projet TypeScript en full console pour commencer, avec une approche pilotée par les tests, afin de s'habituer aux notions de use cases et de testabilité du code. Tu y découvriras notamment :

  • le point commun entre toutes les applications
  • pourquoi il n'existe que très peu d'application purement CRUD
  • qu'est-ce qu'une "task-based UI"
  • comment s'aider du Story Mapping pour déterminer les fonctionnalités de notre application
  • comment utiliser l'Example Mapping pour aider à trouver des exemples et des critères d'acceptation pour les différents use cases
  • comprendre ce que l'on veut tester
  • terminer une implémentation basique mais fonctionnelle
  • comment gérer les erreurs
  • comment valider les données
  • comment encapsuler certaines règles dans des Value Objects

Objectif de cette partie : déterminer des use cases et des critères d'acceptation testable automatiquement, et leur implémentation au sein d'une architecture hexagonale simple. Comprendre l'intérêt du CQRS simple.



Module 4

On continue dans la pratique, ce module est un module focalisé sur le frontend avec React. On y reprendra le projet précédent pour y greffer une interface React plutôt que la console. Tu apprendras notamment :

  • comment mettre en place un projet React TypeScript rapidement avec NextJS
  • comment créer une pipeline de déploiement minimale avec GitHub Actions et Vercel, et semantic release
  • comment rendre ses composants React le plus simple possible grâce aux ViewModels
  • la création d'une persistance avec Firebase (ou autre)
  • comment tester l'intégration avec Firebase grâce aux TestContainers
  • comment mettre en place des outils de monitoring dédiés au frontend

Objectif de cette partie : comprendre comment implémenter une architecture hexagonale simple côté frontend et tester l'intégration avec l'I/O et la mise en place d'une pipeline CI/CD



Module 5

Toujours dans la pratique, mais cette fois-ci côté bakend, avec NestJS. Tu découvriras :

  • le transaction script : le type de gestion de la logique métier la plus simple au sein d'une architecture hexagonale
  • l'intérêt des transactions
  • l'injection de dépendances automatisée
  • comment mettre en place des controllers et valider les requêtes entrantes
  • la mise en place d'une CI/CD propre au backend
  • comprendre comment tester les controllers, et plus globalement les adapters primaires
  • la mise en place d'outil de monitoring

Objectif : comprendre la mise en place de l'architecture hexagonale côté backend, comprendre le principe de transaction et comment tester la partie controller / api.



Module 6

Présentation d'un nouveau projet plus complexe, avec problématique de concurrence. Tu y découvriras :

  • les patterns stratégique du Domain-Driven Design
  • la définition d'un bounded context
  • les différentes relations entre bounded context
  • l'importance de se focaliser sur le core domain
  • les patterns tactiques du Domain-Driven Design (Aggregate, Value Object, Domain Event, ...)
  • L'EventStorming pour aider à déterminer les bounded contexts et les aggregates

Objectif : comprendre les principes généraux du DDD, avoir une vision claire des étapes de l'implémentation.



Module 7

Tu mettras en pratique tout ce que tu as appris dans les précédents modules. Tu implémenteras l'application de façon itérative par petits incréments, en livrant régulièrement en production avec une implémentation d'abord full in-memory, avec React. En parallèle, tu développeras le backend associé grâce aux différents concepts vus précédemment, tout en livrant continuellement aussi.

Objectif : pouvoir développer une application fullstack grâce aux principes crafts


Le cours étant en construction, ce plan n'est pas exhaustif et donne juste une idée assez fidèle du cours. Le plan peu changer d'ici à la sortie du cours en fonction des retours.

Qui suis-je ?

Je suis Pierre Criulanscy, développeur fullstack freelance depuis 2010.

Je suis passionné par l'architecture logicielle et par toutes les pratiques qui permettent de rendre un code plus maintenable et évolutif.

C'est donc tout naturellement que je me suis intéressé aux pratiques liées au Software Craftsmanship que j'étudie et met en pratique depuis 2016 au sein de grands groupes comme Le Figaro ou Eurosport.

J'ai aussi travaillé pour des startups pour lesquelles aller vite et bien est primordial.

Je suis surtout présent sur LinkedIn où je partage régulièrement mes connaissances sur le sujet auprès de mes plus de 17000 abonnés.

F.A.Q


🔷 Quels-sont les technologies / langages utilisés pour le cours ?

Pour l'instant le cours est uniquement proposé pour TypeScript, React, NextJS, NestJS



🔷 Je n'utilise pas la même stack technique, est-ce que ce cours est adapté quand même ?

Tous les apprentissages de ce cours peuvent être adaptés à d'autres langages / framework. C'est tout l'intérêt du Software Craftsmanship : avoir des connaissances profondes, qui peuvent ensuite être appliquées peu importe la situation

🔷 Est-ce que la formation peut être financée ?

Non :( Pour l'instant, il n'existe aucune possibilité de financement via CPF ou OCPO, mais j'y travaille !



🔷 Est-ce que je peux être remboursé.e si je ne suis pas satisfait.e du cours ?

Tout à fait ! Une fois que tu as acheté le cours, tu as 30 jours pour demander le remboursement. J'y procèderai sans poser de question.



🔷 J'ai terminé la formation, je l'ai mise en pratique pendant plusieurs semaines, mais je ne vois aucune amélioration. Je peux avoir mes 1200€ ?

Je suis désolé que la formation ne t'ait pas convenu.e ! Mais oui bien sûr :) La seule contrepartie est que tu me dises ce qui t'a manqué dans la formation, et je procéderai au paiement immédiatement :) Évidemment il faudra que tu me montres que tu as essayé d'appliquer toute la formation, sans quoi je ne pourrais pas te rembourser. Et ce remboursement est limité à un par personne, évidemment :)

🔷 Combien de temps va me prendre la formation complète ?

Tout dépend de toi ! L'objectif est de vraiment prendre son temps tout en pratiquant en même temps. Fais-le à ton rythme, c'est le plus important, ce n'est pas une course !

🔷 Est-ce que je serai livré.e à moi-même pendant la formation ?

Bien sûr que non ! Tu as la possibilité de laisser des commentaires sur chaque cours, auxquels je réponds le plus rapidement possible. Tu seras aussi invitée à rejoindre notre Slack où tu pourras discuter avec les autres stagiaires et partager tes interrogations, mais aussi tes réussites ! Je suis évidemment très disponible sur le Slack si tu as la moindre question.



🔷 Est-ce que je vais apprendre en profondeur React / NextJS / NestJS ?

Pas du tout ! Ce n'est pas un cours axé sur des technologies. J'utilise cette stack en support du cours, car c'est ma stack privilégiée, mais ce cours n'est pas un tutoriel sur ces technos.



Profite vite de l'offre de pré-commande à 347€ au lieu de 1200€ valable pendant encore quelques jours ! Ce n'est même pas le prix d'un café pendant un an !

⬇️




Tu ne prends aucun risque !

Reçois 1200€ si à la fin de la formation tu trouves que ça ne t'aide pas dans ta carrière !