Le Wagon logo

Rejoignez notre formation DevOps !

Vous êtes agent de l'Etat à Madagascar ? Bénéficiez d'une formation offerte par l'Etat Malagasy pour développer vos compétences tech !

Ce qu'en disent les participants

Bonne méthode, ambiance de startup, ça m’avait manqué !
 
Je note cette formation 9/10 parce que malgré l’intensité de la formation, nous avons appris beaucoup de choses grâce à des outils et méthodes bien pensés. Les profs sont tous cools et l’organisation était top.
 
La formation m’a permis de plonger dans un nouvel univers de développement. Les concepts présentés sont très intéressants.

Résumé de la formation

  • Objectif : Cette formation a pour but de vous apporter une compréhension plus claire de l'approche DevOps et de vous permettre de mettre en place un ensemble de bonnes pratiques lors de la création ou de la maintenance d'applications/API.

  • Format :
    • 5 jours de formation
    • En présentiel à Antananarivo, en 2022
    • 25 participants par groupe
  • Public ciblé : 
    • Professionnels de l'informatique (ingénierie logicielle, réseaux, opérations, sécurité) au sein de l'UGD et des Directions systèmes d’information des ministères
    • Équipes internes ou externes (prestataires) travaillant sur le développement de logiciels ou le support technique
    • Chefs de projet ou chefs d'équipe de l'UGD ou des DSI ministères avec une formation d'ingénieur ou une expérience technique significative
  • Pré-requis : Ce programme est conçu pour des participants ayant une formation technique et souhaitant devenir compétents dans la méthodologie DevOps.
    • Pour les locuteurs non natifs, un niveau autonome de français (B1 du CECR) est nécessaire : peut comprendre et retenir les points essentiels quand le langage est clair et standard, peut décrire un but et exposer brièvement ses motivations ou explications pour son projet professionnel
    • Avoir des connaissances de base d'un langage de programmation orienté objet (Python, Java, C++, Ruby, Visual Basic, .NET...) et des bases de données
    • Disposer d'une webcam, d'écouteurs et d'un bon accès à Internet

Programme détaillé

Objectifs pédagogiques
  • Comprendre un langage de programmation orienté objet (Python)
  • Maîtriser les capacités de débogage et de test pour une meilleure qualité de code
  • Se familiariser avec les meilleures pratiques de la programmation d'applications web
  • Comprendre le développement piloté par les tests (TDD), l'intégration continue (CI) et le déploiement continu (CD)
  • Développement d'API et meilleures pratiques en documentation d'API
  • Comprendre les bases de données relationnelles
  • Pratiquer Docker et comprendre les avantages de la conteneurisation
Logiciels utilisés
Python, Docker, Sublime Text 3, PostgreSQL, Git & GitHub
Travail préparatoire
Avant de débuter la formation, Le Wagon propose deux journées de travail préparatoire via des cours en ligne. Pendant la préparation, Le Wagon met à disposition un Professeur Assistant à distance pour vous guider et vous apporter un soutien technique. L'objectif du travail préparatoire est d'acquérir les bases nécessaires pour pouvoir mieux appréhender les cinq journées intenses de formation.
Unité 1 : Programmation orienté objet (Python)

Apprendre les bonnes façons d'organiser son code.

Ce cours passera en revue tous les concepts de base (variables, conditions, boucles, classes, etc.) et les bonnes pratiques du paradigme POO. Les participants apprendront à mettre en place un environnement Python et auront une vue complète de la programmation en Python 3.

  • La boîte à outils du développeur
  • Pratique de Python (Types, variables, méthodes etc)
  • Algorithmes simples
  • Méthodes d'instance
  • Concepts de la POO
  • Débogage
Unité 2 : Meilleures pratiques DevOps : Versionnage, TDD, CI/CDL

Les participants découvriront les meilleures pratiques de DevOps, en commençant par le GitHub Flow, puis en pratiquant un processus de développement logiciel moderne (TDD) et enfin en apprenant à livrer avec les pipelines CI/CD.

  • Bonnes pratiques de gestion de projets
  • Git & GitHub flow
  • Développement piloté par les tests
  • Intégration continue
  • Livraison continue
  • Flux de travail CI/CD
  • Outils de monitoring
Unité 3 : Développement back-end: HTTP, API, Services Web

Apprendre les meilleures pratiques de développement web back-end, comprendre comment le client communique avec le serveur sous le protocole réseau HTTP.

Les participants implémenteront un clone de l'API du réseau social Twitter en appliquant les pratiques DevOps apprises précédemment.

  • Protocole HTTP
  • Comment le serveur et le client communiquent
  • Méthodes HTTP
  • En-têtes de requête et de réponse
  • CRUD sur une ressource
  • Construction d'une interface de programmation d'application (API) REST
  • Utilisation d'un framework Python : Flask
Unité 4 : Gestion des bases de données : SQL, ORM et ETL

Dans ce module, les participants apprendront à créer des bases de données relationnelles, à manipuler des données avec des requêtes SQL, et à comprendre comment les données circulent. Ils pratiqueront sur un clone de l'API Twitter tout en mettant en application la méthode de l'intégration continue.

  • Qu'est-ce qu'une base de données relationnelle
  • Dessiner un schéma de base de données
  • Installer une base de données PostgreSQL
  • Manipuler des données (CRUD) avec des requêtes SQL
  • Mise à jour du schéma
  • Migration des données
Unité 5 : Conteneurisation : Docker, images, introduction à l'orchestration

Comprendre l'intérêt des conteneurs et comment appliquer cette solution avec l'outil Docker.

Les participants prendront en main leur premier conteneur afin d'empaqueter l'application qu'ils ont développé précédemment dans ce parcours.

  • Collaboration en équipe sur des projets
  • Empaqueter une application avec Docker
  • Le processus de Dockerfile, Docker Image et Docker container
  • Les avantages de l'utilisation de Docker
  • Installer Docker Desktop et pratiquer les commandes Docker courantes (CLI)
  • Introduction à Docker Swarm et Kubernetes pour l'orchestration