Programa Internacional LEAD MICROSERVICES ARCHITECTURE WITH DOCKER CONTAINER Sé un experto en arquitectura de software para tomar decisiones estratégicas en la definición, implementación, realización y certificación de arquitecturas escalables, flexibles y seguras para desarrollar pequeños servicios independientes que impulsan la innovación y minimizan el Time To Market (TTM) de los proyectos de software en las empresas. www.litethinking.com 24 horas Capacitación en línea Descripción La mayoría de los sistemas de información de las empresas son sistemas heredados (o sistema Legacy) que utilizan procesos asociados y funcionan como un único servicio. Esto significa que, si una función de negocio experimenta una elevada demanda, se debe escalar todo el servicio. Las arquitecturas monolíticas carecen de escalabilidad, limita la experimentación, dificulta la implementación de nuevas ideas de negocio y condiciona el mantenimiento de los sistemas de información. Con una arquitectura de microservicios, un sistema de información se construye con múltiples servicios pequeños e independientes que tienen propósitos específicos para el negocio. Las arquitecturas de microservicios se convirtieron en modelos innovadores que buscan la atención de las empresas para transformar las arquitecturas monolíticas en servicios modulares que disminuyen el riesgo de la disponibilidad de las aplicaciones, aumentan la seguridad de la información, satisfacen con flexibilidad la demanda de los clientes y minimizan los costos en las empresas. Te capacitamos y certificamos para que seas el próximo líder que impulse la transformación de las arquitecturas monolíticas en modelos escalables, flexibles y seguros. ¿Por qué capacitarse en Lead Microservices Architecture with Docker Container? Lead Microservices Architecture with Docker Container es un programa novedoso que permitirá que los participantes se distingan por su capacidad en implementar arquitecturas de microservicios mediante el uso de contenedores que ayudan a las empresas a crear y desplegar aplicaciones a la velocidad y escala de la arquitectura de nube, independientemente de la plataforma o las herramientas utilizadas. Participantes Esta capacitación está dirigida a todos los participantes interesados en dominar y comprender la arquitectura de microservicios como un enfoque importante para aplicaciones distribuidas de misión crítica. Es un programa para ingenieros de sistemas, ingenieros de desarrollo de software, programadores de software, analistas de desarrollo, arquitectos de software, y otros participantes con intereses en desarrollar plataformas digitales escalables, robustos y seguros, mediante servicios pequeños que pueden ser desarrollados, probados, implantados y versionados independientemente. No se requiere ningún conocimiento previo. Objetivo Los participantes obtendrán una comprensión profunda de la arquitectura de microservicios y sus diferencias con una arquitectura monolítica. Además, los participantes estarán preparados para entender a manejar una arquitectura lógica y una arquitectura física, implementar microservicios en contenedores y organizar su orquestación. 02 TEMA 1: Introducción a la arquitectura de software Objetivos de aprendizaje • Explorar los estilos y patrones de la arquitectura de software para conocer sus diferencias, ventajas y mejores prácticas. • Exponer a los participantes la importancia de la arquitectura de software para aplicar sus conceptos en la transformación digital de las empresas. ¿Cómo se medirán estos objetivos? • Arquitectura de software. • Tipos de patrones de diseño. • Patrones arquitectónicos. • Estilos arquitectónicos. • Relación entre patrones de diseño, arquitectónicos y estilos arquitectónicos. • Principios SOLID: • Single Responsibility Principle (SRP). • Open/Closed Principle (OCP). • Liskov Substitution Principle (LSP). • Interface Segregation Principle (ISP). • Dependency Inversion Principle (DIP). • Otros conceptos: • Encapsulamiento • Acoplamiento. • Cohesión. • Don't Repeat Yourself (DRY). • Separation of Concerns (SOC). • Ley de Demeter. • Keep it Simple, Stupid (KISS). • Inversion of Control (IoC) • Atributos de calidad: • Atributos de calidad observables. • No observables. • Discutir y desenvolverse en casos que se presenten en la situación del tema, realizar retos y resolver dudas de los conceptos aprendidos. 03 TEMA 2: Estilos y patrones arquitectónicos Objetivos de aprendizaje • Aplicar los conceptos de estilos y patrones arquitectónicos en proyectos tecnológicos en un entorno colaborativo. • Dotar de un marco conceptual y práctico sobre metodologías, estrategias de análisis y diseño de arquitecturas de software. ¿Cómo se medirán estos objetivos? • Estilos arquitectónicos: • Monolítico. • Cliente / Servidor. • Peer-to-peer (P2P). • Arquitectura en capas. • Microkernel. • Arquitectura Orientada a Servicios (SOA). • Microservicios. • Event Driven Architecture (EDA). • Representational state transfer (REST). • Patrón de software basado en el espacio. • FaaS (Functions as a Service). • Características, ventajas y desventajas de los diferentes estilos de arquitectura. • Beneficios y desafíos de los diferentes estilos de arquitectura. • ¿Cuándo utilizar un estilo de arquitectura específico? • ¿Cómo estructurar un estilo de arquitectura? • Patrones arquitectónicos: • Data Transfer Object (DTO). • Data Access Object (DAO). • Polling. • Webhook. • Load Balance. • Service Registry. • Service Discovery. • API Gateway. • Access Token. • Single Sign On. • Store and Forward. • Circuit Breaker. • Log Aggreation. • Discutir y desenvolverse en casos que se presenten en la situación del tema, realizar retos y resolver dudas de los conceptos aprendidos. 04 TEMA 3: Arquitectura de microservicios y contenedores Objetivos de aprendizaje • Profundizar en la arquitectura de microservicios y conocer las principales diferencias con una arquitectura monolítica. • Explorar las ventajas de implementar microservicios en contenedores. ¿Cómo se medirán estos objetivos? • Arquitecturas de microservicios: • Visión. • ¿Cómo se estructura un microservicio? • Escalabilidad monolítica vs escalabilidad de microservicios. • Características de un microservicio. • Cuando debo utilizar un estilo de microservicios. • Comunicación en una arquitectura de microservicios. • Resiliencia y alta disponibilidad en microservicios. • Docker: • Introducción a contenedores y Docker. • Principios de diseño de contenedores. • Terminología Docker. • Características de un contenedor Docker, imágenes y registro. • Instalar un contenedor de aplicaciones. • Comandos de Docker para administrar contenedores. • Aplicaciones monolíticas en contenedores. • Desplegando un microservicio como contenedor. • Desarrollo de una aplicación y servicio web bajo un estilo de microservicios en NET Core, Spring Boot o Django. • Discutir y desenvolverse en casos que se presenten en la situación del tema, realizar retos y resolver dudas de los conceptos aprendidos. 05 TEMA 4: Orquestación de contenedores para DevOps Objetivos de aprendizaje • Conocer las principales herramientas para la orquestación de contenedores. • Explorar los conceptos de DevOps para crear Pipelines de despliegue e integración continua. ¿Cómo se medirán estos objetivos? • Introducción a DevOps: • Agilismo. • Arquitecturas evolutivas. • Diseño basado en dominio (DDD). • Cultura Devops. • Desarrollo ágil. • Pipeline para el despliegue continuo. • Pipeline para la integración continua. • Estrategias para implementar el Testing continuo. • Tabla periódica de herramientas DevOps. • Terraform. • Jenkins-x. • Escalabilidad y disponibilidad: • Kubernetes. • OpenShift. • Docker Swarm. • Docker Compose. • MiniKube. • Cloudify. • Rancher. • Despliegue de contenedores: • Orquestando microservicios y aplicaciones multi-contenedor para alta escalabilidad y disponibilidad. • Entorno de desarrollo para Kubernetes. • Microservicios sin estado versus microservicios con estado. • Estructura archivo Docker file. • Redes en contenedores. • Almacenamiento en contenedores. • Límites a los recursos. • Logs. • Orquestadores de contenedores. • Seguridad: • Imágenes de confianza e imágenes mínimas. • Eliminar root. • Uso de Vault. • Certificados digitales. • Protocolo HTTPS. • Protocolo TLS. • Firewalls. • Proxy Reverso. • OWASP. • Discutir y desenvolverse en casos que se presenten en la situación del tema, realizar retos y resolver dudas de los conceptos aprendidos. 06 METODOLOGÍA Ciclo de aprendizaje experiencial de Kolb Solucionar casos, juego de roles, discusiones en equipo de forma efectiva. Clases magistrales interactivas para clarificar y ampliar los conceptos. Investigar temas complementarios. ión tac en iva ct Exp eri m ac t ia c en ta ac Exp e r re im f l e Exp ab eri s tr Poner en práctica lo aprendido, fomentar la mejora continua y ser competitivo. Exp er co i nc cia en ta re n ó i ac t en a iv Retroalimentar retos y resolver dudas de los temas aprendidos en el programa. APRENDIZAJE EXPERIENCIAL Una metodología activa y centrada en el participante • Coaching y retroalimentación en tiempo real. • Fomento del trabajo en equipo y de habilidades comunicativas. • Hábitos de reflexión en la práctica. • Retos frecuentes. 03 07 BENEFICIOS • 24 horas de encuentros sincrónicos por videoconferencia en Microsoft Teams. • 12 horas de práctica en nuestra plataforma virtual Lite Thinking LMS. • Dominar las buenas prácticas de la arquitectura de software para impulsar su implementación en las empresas. • Material digital para el participante y acceso ilimitado a Lite Thinking LMS para realizar retos. • Certificado digital emitido por Lite Thinking al alcanzar una asistencia del 90% y al aprobar los retos del programa. 08 CERTIFICACIONES Este programa proporciona la siguiente modalidad de certificación internacional, según las necesidades del participante: Lead Microservices Architecture with Docker Container 09 PARTNERS El participante cuenta con la posibilidad de elegir alguno de nuestros Partners aliados para modalidad de certificación seleccionada. El participante podrá realizar los exámenes de certificación internacional sin costo adicional hasta dos veces. SCRUMstudy. Es un organismo de acreditación global para las certificaciones Scrum y Agile. Es autor de la Guía SBOK®, un documento que constituye una referencia completa para la realización de proyectos exitosos con el marco Scrum. CertJoin Es una empresa con experiencia en el desarrollo, creación y gestión de contenidos de tecnologías de la información. Desarrolla exámenes de alta calidad para garantizar y evaluar el conocimiento y cumplimiento de los requisitos específicos de cada certicifación según estándares internacionales. CertiProf. Es un instituto de certificación y autor de un portafolio de certificaciones internacionales con alta demanda en el mercado laboral, para que las personas puedan validar sus conocimientos y habilidades. Scaled Agile. Es una prestigiosa organización mundial con casa matriz en Estados Unidos y proveedora de Scaled Agile Framework® (SAFe®). El marco SAFe® forma agentes de cambio y es el más utilizado en la transformación digital. DevOps Agile Skills Association (DASA). Es una asociación independiente y abierta, dirigida por miembros que apoyan el desarrollo de la capacitación y certificación de DevOps en el mercado global. 10 Contáctanos +57 301 6576203 [email protected] Colombia +57 301 6627953 [email protected] Estados Unidos Síguenos: www.litethinking.com