Apprends l'algorithmique et entraîne-toi sur CodinGame, la plateforme préférée des entreprises pour faire passer les entretiens techniques !
Imagine une méthode facile à apprendre te permettant de résoudre n'importe quel exercice de programmation. Il te suffit de suivre chaque étape, pas à pas, dans l'ordre indiqué.
Après 3 mois de pratique à plein temps avec cette méthode, tu deviendras suffisamment à l'aise en algorithmique pour créer tes propres algorithmes et passer un entretien technique d'embauche avec succès.
Le mieux c'est que je laisse mes étudiants t'en parler dans les témoignages ci-dessous.
Tu es face à un nouvel exercice et tu ne sais pas par où commencer ? C'est ce qu'on appelle le syndrome de la page blanche.
Après plusieurs relectures de l'énoncé tu commences à coder mais ton esprit s'embrouille. Tu te perds dans ta tête et tu ne sais plus comment continuer.
Tu as déjà lu beaucoup de solutions à ce type d'exercice, tu les comprends peut-être toutes très bien et pourtant : impossible de trouver ces solutions par toi-même en partant de zéro.
Tu n'arrives pas à décomposer un problème complexe en petits problèmes plus simples puis à assembler leurs solutions respectives en une solution globale.
Tu as aussi du mal avec les boucles et les fonctions récursives (quel cauchemar !). Tu ne comprends pas la logique qu'il y a derrière et tu as plein de questions :
Quand utiliser une boucle ?
Comment faire pour rédiger mes propres algorithmes ?
Comment réussir à répondre à un exercice en toute autonomie, de A à Z ?
Comment résoudre un problème avant de passer au code à proprement parler ?
Tu as l'impression qu'il te manque une étape clé entre l'énoncé du problème et le code…
ET TU AS RAISON (on va y revenir)
Tous ces blocages ne sont pas vraiment un problème pendant ton apprentissage du langage car tu êtes guidé.
Mais ce n'est pas la même chose pendant un entretien technique d'embauche...
Si tu as eu l'occasion d'en faire, tu t'es rendu compte qu'ils sont non seulement décorrélés de la réalité du travail mais qu'en plus ils sont complexes (parfois même chronométrés !) et réalisés sur des plateformes que tu découvres pour la première fois (CodinGame) au moment de les faire.
Une véritable recette pour un échec assuré si on n'y est pas préparé.
Malheureusement pour toi, les entreprises ont recours à ce type d'entretien pour tester les capacités des candidats. Même si ces tests sont souvent inadaptés, faute de mieux, ils sont toujours utilisés.
Réussir un entretien technique devient donc une compétence à part entière qu'il va falloir acquérir. C'est tout le sujet de ce module !
Devenir bon en algorithmique, ça se travaille comme un muscle. Chaque jour où tu ne pratiques pas atrophie ce muscle.
Comment vas-tu faire pour atteindre tes objectifs si tu ne t'entraînes pas régulièrement, avec méthode, à l'algorithmique ?
Chaque exercice que tu n'arrives pas à faire va effriter ta confiance en toi.
Chaque entretien raté sera une opportunité de décrocher un premier job qui s'évanouit à jamais (on retente rarement un entretien là où on a échoué et les places sont limitées).
Tu vas rentrer dans un cercle vicieux qui risque de te faire perdre tout espoir et de te faire abandonner ton projet de reconversion professionnelle rapidement.
Tout ça n'est pas de ta faute.
Il te manque une étape essentielle dans ton raisonnement, un ingrédient clé pour acquérir cette logique dont sont dotés tous les développeurs professionnels.
Cette étape cruciale (dont personne ne parle dans aucune formation) : c'est l'utilisation du pseudo-code.
Lorsque tu regardes un développeur résoudre un exercice, tu vois ceci :
Il lit l'énoncé pour bien le comprendre
Il rédige la solution avec son langage de programmation favori
Le problème, c'est qu'il y a une étape cachée entre l'étape 1 et 2 !
Cette étape, c'est la construction d'un algorithme en pseudo-code.
Pourquoi est-ce qu'on te cache cette étape ? Tout simplement parce qu'elle est effectuée dans la tête du développeur, de façon extrêmement rapide. Elle n'est donc pas cachée de façon intentionnelle.
En effet, lorsqu'on est habitué à développer, on ne passe plus par cette phase de rédaction de l'algorithme en pseudo-code.
Mais en réalité, un développeur développe toujours comme ça :
Il lit l'énoncé pour bien le comprendre
Il conçoit un algorithme de solution à ce problème dans sa tête (en pseudo-code)
Il rédige la solution dans son langage de programmation favori (c'est ce qu'on appelle l'implémentation)
Cette seconde étape n'est jamais enseignée. Nulle part. Dans aucune formation.
Il est donc normal que tu bloques précisément à cette étape dans ton apprentissage !
Lorsque tu apprends un langage de programmation pour la première fois, ton cerveau doit être concentré sur la syntaxe du langage (quel mot-clé utiliser ? Où mettre les parenthèses, les accolades, les point-virgules etc.).
Or ta concentration est une ressource limitée. Ton cerveau n'est capable de supporter qu'une certaine charge pendant un temps donné.
Cette charge c'est ce qu'on appelle la charge cognitive.
Lorsque tu es concentré pour ne pas oublier une parenthèse par-ci, une accolade par-là, ton cerveau n'a plus de ressource pour penser au problème à résoudre et tu es perdu.
En utilisant du pseudo-code, tu vas pouvoir dissocier l'écriture de la solution algorithmique de l'écriture du code : tu pourras alors te débarasser de cette charge cognitive liée à la syntaxe du langage et te concentrer uniquement sur le problème à résoudre.
Cette étape supplémentaire permet de construire et rédiger dans un premier temps l'algorithme qui permettra de solutionner le problème.
Ensuite, tu pourras implémenter dans le langage de programmation de ton choix cet algorithme.
Le pseudo-code permet d'écrire un algorithme en utilisant un langage qui se rapproche plus de ta langue maternelle que d'un langage de programmation.
C'est donc l'outil idéal pour rédiger des algorithmes facilement avec une charge cognitive très faible.
Dans ce module, tu vas apprendre à utiliser du pseudo-code et à appliquer la méthode DECAPI™. Grâce à cette méthode tu apprendras à rédiger pas à pas, en pseudo-code, les solutions des exercices sous la forme d'algorithmes.
La méthode DECAPI™ désigne le cycle de création d'un algorithme : Découverte, Exploration, CAs Particuliers, Implémentation.
Cette méthode est exclusive, tu ne la trouveras dans AUCUN livre ni AUCUNE autre formation.
En effet, je l'ai spécialement conçue pour les personnes en reconversion professionnelle : elle s'adresse aux débutants complets en programmation.
Grâce à l'utilisation du pseudo-code et à la méthode DECAPI™ tu vas acquérir la logique qu'il te manque pour pouvoir résoudre n'importe quel problème en partant de zéro.
Tu n'auras plus jamais peur de démarrer un exercice que tu n'as jamais fait car tu auras une méthode simple à suivre pas à pas pour l'aborder : terminé le syndrome de la page blanche où tu ne savais pas par où commencer !
Tu pourras alors concevoir tes propres algorithmes en structurant ta pensée grâce au pseudo-code et acquérir cette "façon de penser" très spécifique aux développeurs.
De plus tu t'entraîneras sur les plateformes d'entraînement utilisées par les entreprises pour réaliser les tests d'embauche : CodinGame et Codewars.
Tu seras ainsi plus serein lors de tes entretiens techniques car tu connaitras déjà ces sites et tu te seras déjà entraînés dessus.
Comme tu seras plus à l'aise que les autres candidats, tu développeras plus vite une solution à un exercice donné ce qui te permettra de performer même sous la pression d'un chronomètre.
10 heures de théorie et plus de 50 heures de pratique !
Pseudo-code
Méthode DECAPI™
Structures de données : tableaux, piles, files, ensembles, dictionnaires.
Notation Big O
Récursivité
Algorithmes de tris (parfois demandés en entretien techniques) : tri à bulles, tri par sélection, tri par insertion
Arrangements, permutations et combinaisons
Optimisation via la mémoïsation
Rédaction d'algorithmes en pseudo-code
Implémentation de ces algorithmes en JavaScript
Exercices de difficulté croissante sur les plateformes Codewars puis CodinGame
Live Coding sur YouTube
Nous avons résolus 45+ exercices sur Codewars (niveau 8, 7, 6 et 5 kyu) et 20+ puzzles classiques sur CodinGame !
Regarde ces rediffusions dès l'achat du module algorithmique.
Retrouve rapidement le passage qui t'intéresse pour chaque live grâce aux sommaires
Voici quelques commentaires que j'ai reçus de mes étudiants suite aux lives que j'ai faits.
Pour suivre ce module tu dois être familier avec les concepts de base communs aux langages de programmation : les types de données, les variables, les conditions, les boucles et les fonctions.
Je te conseille donc de suivre d'abord le module débutant (gratuit) qui traite de ces sujets.
Tu devras également être à l'aise avec la notion d'objet, les tableaux, les opérateurs mathématiques de base (dont la puissance et le modulo) et enfin les méthodes de la libraire standard Math.
Ces dernières notions sont enseignées dans le module intermédiaire que tu peux suivre si tu en sens le besoin.
Note que tu n'es pas obligé de vouloir apprendre le JavaScript pour suivre ce module. Tu dois simplement vouloir apprendre à programmer, apprendre l'algorithmique.
En effet, le pseudo-code est indépendant du langage de programmation et j'ai structuré les leçons pour que l'implémentation en JavaScript des algorithmes que nous rédigeons soit faite à la fin de la vidéo.
Ainsi, tu peux suivre les leçons théoriques sur l'algorithmique + la résolution des exercices grâce au pseudo-code d'un côté et dès qu'on passe à l'implémentation des algorithmes, tu peux sauter cette étape et le faire de ton côté, avec le langage de programmation de ton choix.
La formation JavaScript de Zéro est disponible avec une garantie "satisfait ou remboursé" de 14 jours, qui te permet d’obtenir un remboursement si tu n’es pas satisfait de la qualité de la formation ou de son contenu. Tu ne prends donc aucun risque à l'acheter dès maintenant.
Ce module coûte 199 €.
C'est un prix vite remboursé quand on décroche un job de développeur quelques mois plus tard !
Un prix dérisoire pour avoir enfin le déclic et prendre plaisir à programmer… pour le reste de sa vie.
Ne passe pas à côté de tes projets pour une question d'argent : tu peux échelonner le paiement sur 5 mois si besoin.
Non. Le TDD est une pratique de développement qui n'a pas sa place dans ce module algorithmique.
➡️ Par téléphone ou WhatsApp : 06 67 40 56 09
➡️ Par email : jeremy@javascriptdezero.com