(Madrid) +34 91 047 84 41 (Barcelona) +34 93 409 40 40
1.- Introducción a DevOps + Planificación y Codificación • DevOps, concepto y cultura • Metodologías Ágiles - Nociones de los frameworks SCRUM y Kanban y sus ceremonias • Prácticas DevOps • Control de versiones - CVS, Subversion, - Git - Github, GitLab - Gitflow • Reproducibilidad - Introducción a contenedores - Conceptos contenedores Docker - Registries 2.- Construcción • Herramientas de construcción y gestión de dependencias - Ant, Maven, Gradle - NPM, Yarn • Integración Continua • Jenkins - Pipelines declarativo - Jenkinsfile - Intro de Groovy - Shared libraries • Gitlab 3.- Testing I • Regression / Unit Testing - Test Unit Java – jUnit, Mockito - Test Unit NodeJS – Mocha - Test Unit Angular – Jasmine - API Testing - vscode + REST client/Thunder client • Coverage Testing - Java - JaCoCo - NodeJS – Istambul 4.- Testing II • Test de Mutaciones - Java - PITest - NodeJS – Stryker • Testing funcional - Selenium - Protractor + Jasmine - Cypress - Cucumber 5.- Testing III • Reporting - Serenity - Allure • Testing en Integración Continua (In-Depth) - Integración en Jenkins de los Test Unitarios - Integración de Reportes - Integración en GitLab 6.- QA • Calidad de código - SonarQuBe - VeraCode • Seguridad - Análisis de vulnerabilidades • Integración en Jenkins 7.- Gestión de artefactos • Nexus • Archiva • Gitlab 8.- Continuous Release & Deployment I • Infrastructure as a Service (IaaS) • Provisionamiento de infraestructura - Terraform - CloudFormation - Ansible • Gestión de la configuración • Comparación de modelo imperativo vs. declarativo - Ansible - Puppet • Deployment 9.- Continuous Release & Deployment II • Docker - Docker compose - Docker swarms • Kubernetes / OpenShift - Pods, Deployments, Statefulsets, Cronjobs, Daemonsets, Services, Ingress - Sistemas en contenedores - Kubernetes / OpenShift • Despliegue de aplicaciones - Estrategias de despliegue - Rolling upgrade - Blue/Green - Canary 10.- Monitorización y Observabilidad • Introducción • ELK • Prometheus • Grafana • OpenTracing/Jaeger • Splunk/Scribe
Curso dirigido a Programadores, Analistas, Jefes de proyecto y Arquitectos Java.
Conocimientos previos y experiencia con lenguajes de programación Java y POO.
Conocer y aplicar los diferentes tipos de test durante el ciclo de vida de desarrollo de una aplicación.