T’as pas besoin de tout apprendre. L’objectif de ces 90 jours : poser des bases solides, apprendre un langage, construire de vrais projets, et surtout trouver la branche de la tech dans laquelle tu veux creuser.
À la fin, tu ne seras pas « développeur confirmé ». Tu seras quelqu’un qui sait apprendre seul, qui a 3 projets à montrer, et qui sait dans quelle direction aller. C’est très largement suffisant pour commencer.
Phase 1 — Les fondations
Semaines 1 à 4
Ton premier objectif, c’est de comprendre comment la programmation fonctionne. Pas de mémoriser de la syntaxe.
La ressource : CS50 (Harvard)
C’est la référence absolue, gratuite, avec certificat à la clé. Tu y apprends :
- la résolution de problèmes
- les algorithmes
- les structures de données
- les fondamentaux de la programmation
- comment un ordinateur fonctionne réellement
Ce que tu fais concrètement
- Environ 8 h par semaine.
- Tu suis les cours et tu fais les exercices.
- Tu cherches la solution toi-même avant de regarder.
- Tu te concentres sur le pourquoi ton code marche.
Phase 2 — Apprendre Python
Jours 1 à 30, en parallèle de CS50
Python est un excellent premier langage : la syntaxe est simple, et le langage sert partout.
Plus tard, tu pourras l’utiliser pour du backend, de l’automatisation, de la data, du machine learning, de l’IA, des APIs ou du scripting.
La ressource : 30 Days of Python
Ce que tu fais concrètement
Une leçon par jour. Et tu ne te contentes pas de lire les exemples. Pour chaque notion :
- Tu écris le code toi-même.
- Tu modifies les exemples.
- Tu casses le code volontairement.
- Tu le débugges.
- Tu construis un petit truc avec.
Au bout de 30 jours, tu dois savoir écrire un programme Python simple sans suivre un tuto en permanence.
Phase 3 — Construire
Semaines 5 à 8
Une fois les bases en place, arrête de passer tout ton temps à consommer des tutos. Construis.
La ressource : Project Based Learning
Va dans la section Python et choisis des projets qui t’intéressent vraiment.
Ton objectif : 2 à 3 projets complets.
Choisis des projets qui t’obligent à apprendre un truc que tu n’as jamais utilisé. Par exemple :
- une API
- un web scraper
- l’automatisation d’une tâche répétitive
- une petite application web
- un projet qui consomme une API externe
- une analyse de données
- une mini-application de machine learning
Pour chaque projet, sans exception
- Tu crées un dépôt GitHub.
- Tu écris un README clair.
- Tu expliques ce que fait le projet.
- Tu documentes comment le lancer.
- Tu commits au fur et à mesure (pas tout d’un coup à la fin).
- Tu améliores le projet une fois que la v1 marche.
Choisir ta spécialité
Choisir une spécialité, c’est l’étape la plus importante. Ça te donne une direction au lieu d’essayer d’être bon partout en même temps.
Mais tu n’as pas besoin de la connaître dès le premier jour. Au début, explorer est utile.
Les directions possibles :
| Spécialité | Ce que tu fais |
|---|---|
| Backend | Serveurs, APIs, bases de données, authentification, l’infrastructure derrière les applis |
| Web / Full-stack | Des sites et des applis que les gens utilisent vraiment |
| Data science | Analyser des données, trouver des patterns, répondre à des questions avec des stats |
| Machine learning / IA | Modèles, LLMs, vision par ordinateur, agents, systèmes de recommandation |
| Cybersécurité | Comment les systèmes sont attaqués, défendus et sécurisés |
| DevOps / Cloud | Déploiement, CI/CD, conteneurs, monitoring |
| Automatisation | Du code pour supprimer les tâches répétitives et connecter des systèmes |
Explore avant de te spécialiser
Une bonne approche : passer les premières semaines à essayer plusieurs choses.
Une semaine tu construis une API. Puis tu testes du machine learning. Puis un script d’automatisation. Puis une petite app web.
Le but n’est pas de devenir expert dans tout. Le but, c’est de remarquer une chose :
Sur quoi est-ce que je reviens, même quand personne ne me le demande ?
C’est un bien meilleur signal que de choisir une spécialité parce qu’elle fait bien sur un CV ou parce qu’elle est à la mode.
Phase 4 — Creuser ta spécialité
Semaines 9 à 12
À ce stade tu as les fondamentaux, les bases de Python, l’expérience de quelques projets, et un aperçu de plusieurs domaines.
Maintenant tu choisis une seule direction et tu y passes le dernier mois. Voici une route concrète pour chacune.
🔧 Route Backend
- Choisis ton écosystème : Java/Spring Boot, Node/NestJS ou Python/FastAPI.
- Construis une API complète : CRUD, authentification JWT, validation, gestion d’erreurs centralisée.
- Travaille ta base de données : modélisation, jointures, index, et le piège du N+1. pgexercises.com pour t’entraîner au SQL
- Comprends ce qu’il y a sous le capot : recode un Redis ou un serveur HTTP minimal. codecrafters.io
- Déploie-la pour de vrai, avec une vraie base de données.
À la fin : une API en ligne, documentée, avec son README et son lien public.
🌐 Route Web / Full-stack
- Un cursus structuré : Full Stack Open (Université d’Helsinki, gratuit, avec certificat).
- Du React/Node jusqu’au déploiement, en suivant les parties dans l’ordre.
- Travaille ton œil : intègre de vraies maquettes de designer. frontendmentor.io
- Construis une app complète : auth, base de données, et un vrai déploiement.
À la fin : une application full-stack en ligne que n’importe qui peut utiliser.
📊 Route Data / IA
- Les bases pratiques : Python, pandas, SQL, intro au ML. kaggle.com/learn
- Une première compétition Kaggle pour débutants, même si tu finis dernier.
- Le ML comme en production, pas juste un notebook. madewithml.com
- Si l’IA t’attire : construis un LLM de zéro, étape par étape. LLMs-from-scratch
À la fin : un projet data ou ML avec les données, le code et les résultats expliqués.
🔐 Route Cybersécurité
- Le Linux en profondeur : 34 niveaux en SSH. overthewire.org/wargames/bandit
- Les fondamentaux de la sécu : des centaines de salles guidées gratuites. tryhackme.com
- Le débug de vrais serveurs cassés. sadservers.com
- Les failles web : injections SQL, XSS, CSRF, et comment les corriger.
À la fin : un writeup de tes machines résolues, publié sur GitHub.
☁️ Route DevOps / Cloud
- Docker et Kubernetes dans le navigateur, sans rien installer. killercoda.com
- Le troubleshooting Linux en conditions réelles. sadservers.com
- Une pipeline CI/CD avec GitHub Actions : tests auto puis déploiement.
- Conteneurise et déploie un de tes projets de la Phase 3.
À la fin : un projet qui se déploie tout seul à chaque push.
Comment utiliser l’IA pendant que tu apprends
L’IA est extrêmement utile. Mais si tu lui fais résoudre chaque problème à ta place dès la première difficulté, tu n’apprends rien.
Suis cet ordre :
1. Essaie toi-même Prends le temps de comprendre le problème et de tenter une solution.
2. Débugge toi-même Lis les erreurs, inspecte tes variables, cherche dans la doc, expérimente.
3. Demande un indice Si tu bloques vraiment, demande à l’IA de t’expliquer le concept ou de te donner une piste — pas d’écrire la solution.
4. Étudie la solution Si tu finis par utiliser du code généré, assure-toi de pouvoir expliquer :
- ce que fait chaque partie importante
- pourquoi la solution fonctionne
- ce qui se passerait si tu changeais tel bout
- comment tu referais un truc similaire tout seul
Récapitulatif
| Période | Objectif | Ressource |
|---|---|---|
| Semaines 1-4 | Les fondamentaux | CS50 |
| Jours 1-30 | Python | 30 Days of Python |
| Semaines 5-8 | 2-3 projets | Project Based Learning |
| Semaines 9-12 | Ta spécialité | Route dédiée ci-dessus |
Une dernière chose : 30 minutes par jour valent mieux que 5 heures le dimanche. La régularité bat l’intensité, à chaque fois.