

Apprendre à apprendre
Le programme d’apprentissage de 42 est basé sur les principes de la « gamification », du « learning-to-learn » et de l’apprentissage entre pairs. Nos apprenantes et apprenants intruisent l’un l’autre et s’entraident. Les échecs sont des opportunités d’évoluer : teste un programme, comprends tes erreurs et continue ton chemin.
Au cours de cette aventure, tu seras confronté(e) à une sélection de près de 150 projets, dont la durée de réalisation varie de 2 jours à 6 mois, en fonction de leur envergure, de leur complexité et de ton rythme de progression.

Entre 18 mois à 5 ans
1e partie
Le tronc commun
La première partie du programme 42 est le tronc commun – où tu apprendras les fondamentaux du génie logiciel : la programmation en C, les algorithmes et le développement de logiciels, les systèmes de fichiers, UNIX, l’administration système et l’architecture réseau. Bien que chacun progresse à son propre rythme, il faut compter en moyenne environ 12 à 18 mois pour le terminer.
Après avoir réussi le tronc commun, tu as deux options: tu peux choisir de terminer la formation et de recevoir ton certificat 42, attestant du niveau que tu as atteint, ou tu peux choisir de continuer à développer tes compétences dans la deuxième partie, la spécialisation.
2e partie
La spécialisation
La deuxième partie concerne la spécialisation, où tu peux décider de la direction que tu veux prendre : des domaines tels que, entres autres, l’IA, le développement mobile ou web, la cybersécurité ou une combinaison de ces domaines sont à ta disposition. La neutralité vis-à-vis des marques, des technologies et des langages de programmation est mise en avant afin de rester adaptatif pour les besoins du futur. Cette partie comprend plus de 100 projets à réaliser en groupe, ainsi que des stages facultatifs et des programmes d’entrepreneuriat. Chaque apprenante et apprenant peut décider seul(e) du moment où il/elle est prêt/prète à passer à l’étape suivante pour commencer sa carrière et devenir un alumni.
LES DOMAINES ET LEURS COMPÉTENCES
LE DÉVELOPPEMENT DE LOGICIELS

La programmation impérative
- C
La programmation fonctionnelle
- OCaml
- Lisp
La programmation orientée objet (POO)
- C++
- C#
- Java
- Swift
- Le développement mobile
Les algorithmes et l’IA
- L’apprentissage automatique ou artificiel
- L’apprentissage en profondeur
- Le réseau de neurones artificiels
- L’algorithme génétique
- Les mathes
Programmation graphique
- L’informatique visuelle
- Jeux
- OpenGL
- Vulkan
- Metal
L’ADAPTATION ET L’INNOVATION DANS LES TECHNOLOGIES NUMÉRIQUES

Savoir s’adapter et être créatif
- L’innovation
- Sortir des sentiers battus
Le web
- Le développement back-end
- Le développement full-stack
- Les frameworks
- Rails
- Django
- Node
- React
- Symfony
L’intégration technologique
- Des environnements complexes
- Des environnements hétérogènes
- Des programmes d’entrepreneuriat
LA CONCEPTION ET LA GESTION DE SYSTÈMES INFORMATIQUES

La programmation système
- UNIX
- Posix
- Kernel
- Bas niveau
- Les systèmes embarqués
Le réseau et l’administration du système
- Architecture réseau
- Administration système
- L’adresse IP
- Le Cloud
- Le DevOps
- La virtualisation
- L’intégration continue
La sécurité
- Les virus
- Les rootkits
- Les trojans
- Les exploits
- Les pare-feux
- Les contre-mesures
- Les backups
- Attaque de type Man-In-The-Middle
- Usurpation d’adresse IP
Les données et leurs bases
- SQL
- PostgreSQL
- MySQL
- Oracle
- Les data lakes
- NoSQL
- Data lake
- La visualisation des données
- L’exploration de données
Programmation parallèle
- Les threads
- Les mutexes
- Les sémaphores
- La programmation concurrente
- La programmation GPU
- Cuda
- OpenCL
LA COMMUNICATION ET LA GESTION DE GROUPES ET DE PROJETS

La rigueur
- Le style de codage
- Les tests de régression
L’organisation
- L’organisation personnelle
- La gestion de projet
L’expérience industrielle
- Les stages
- Programme travail-étude (work-and-study)
La gestion et la communication des groupes et des projets
- La gestion de groupe
- La communication
Le freeze
Pour faire face à des imprévus, les apprenants disposent d’un outil : le Freeze. Pendant le tronc commun, il permet de mettre en pause, jusqu’à un maximum de 3 fois, pour une durée totale n’excédant pas 6 mois. Par la suite, durant la spécialisation, les apprenants auront un degré de liberté plus accru et plus d’opportunités pour gérer leur temps; tu auras la possibilité de combiner ta spécialisation avec un stage et d’autres expériences professionnelles.


Le certificat 42
42 est un programme de formation viable visant une intégration à long terme sur le marché du travail. Les offres d’emploi ne manquent pas dans le secteur de l’informatique : dès la fin de leur premier stage, deux tiers de nos apprenants se voient proposer leur premier CDI. Le certificat 42 est délivré lorsque l’apprenant décide de mettre fin à sa formation après avoir terminé le tronc commun. Il atteste du niveau final obtenu à 42. Selon le parcours choisi par l’individu, il va du niveau 9 (validation du tronc commun) au niveau 21 (validation de plusieurs branches thématiques disponibles dans la spécialisation, et pouvant inclure des périodes de professionnalisation).