Examen AZ-400 (beta): Microsoft Azure Devops Solutions
¡Hola! En esta entrada te comento que Microsoft ha publicado un nuevo examen de certificación para los interesados en certificarse como DevOps Engineer. El examen en cuestión es el AZ-400 Microsoft Azure DevOps Solutions, el cual se encuentra en su versión beta.
Este examen es ideal para aquellos profesionales que se encargan del proceso de entrega continua de soluciones y servicios valiosos para personas, procesos y otras tecnologías. ¿Temas como Integración Continua (Continuous Integration) y Entrega Continua (Continuous Deployment) te son familiares? ¿Utilizas o quieres aprender sobre prácticas Agile? ¿Utilizas o utilizaste VSTS, HockeyApp, Docker, Kubernetes y tecnologías en la nube? Pues este examen cubre varios de esos temas.
La ventaja del examen beta es que puedes obtener un descuento del 80% aplicando el código AZ400PjM al momento de hacer el ckechout. El precio final quedaría en 20 dólares aproximadamente (precio varía dependiendo la región) peeeeero si eres estudiante o académico recuerda que puedes obtener una reducción en el precio (en mi caso por ejemplo, el precio final fue de 12 dólares). Solo hay dos reglas:
- Hay 300 códigos disponibles en todo el mundo. Así que si te interesa realizarlo, aprovecha mientras es válido.
- El examen lo debes realizar como máximo el día 5 de diciembre.
Aquí explico cómo introducir el código y aquí explico el proceso a seguir para obtener el descuento de estudiante/académico. Ah, por cierto, esta información fue publicada originalmente en el Blog de Microsoft Learning.
Antes de mencionar los temas del examen y sus respectivos links, te comento que los siguientes son recursos gratuitos donde puedes aprender sobre DevOps y que además incluyen varios de los tópicos de la evaluación:
- Jumpstart en español: DevOps para IT Pros y desarrolladores en español
- Webinar en español sobre Xamarin + DevOps con Cristian y Humberto =)
- Cursos del Microsoft Professional Program in DevOps (nota: cada curso SÍ es gratuito, ya si quieres un certificado éste cuesta 99 USD)
- Overview de Azure sobre DevOps.
- En YouTube, Azure DevOps.
- Otra serie de videos en YouTube sobre Azure DevOps.
Ahora sí, los temas del examen. Por cada uno incluiré una serie de links y recursos donde puedes estudiar para prepararte 😀
(NOTA: Estoy actualizando la publicación frecuentemente para agregar links con material de estudio, así que si vuelves otro día seguro que la entrada estará actualizada =) )
Tema 1: Design a DevOps Strategy (20-25%)
Recommend a migration and consolidation strategy for DevOps tools
- Analyze existing artifact (e.g. deployment packages, NuGet) and container repositories
- Analyze existing test management tools
- Analyze existing work management tools (Agile, Scrum, CMMI)
- Recommend migration and integration strategies for artifact repositories, source control, test management, and work management (link adicional)
Design and implement an Agile work management approach
- Identify and recommend project metrics, KPIs, and DevOps measurements (e.g. cycle time, lead time, Azure Kubernetes Service, WIP limit) link adicional y otro más
- Implement tools and processes to support Agile work management (link adicional)
- Mentor team members on Agile techniques and practices
- Recommend an organization structure that supports scaling Agile practices (link adicional)
- Recommend in-team and cross-team collaboration mechanisms
Design a quality strategy
- Analyze existing quality environment
- Identify and recommend quality metrics
- Recommend a strategy for feature flag lifecycle
- Recommend a strategy for measuring and managing technical debt
- Recommend changes to team structure to optimize quality
- Recommend performance testing strategy
Design a secure development process
- Inspect and validate code base for compliance
- Inspect and validate infrastructure for compliance
- Recommend a secure development strategy
- Recommend tools and practices to integrate code security validation (e.g. static code analysis)
- Recommend tools and practices to integrate infrastructure security validation
Design a tool integration strategy
- Design a license management strategy (e.g. VSTS users, concurrent pipelines, test environments, open source software licensing, DevOps tools and services, package management licensing)
- Design a strategy for end-to-end traceability from work items to working software
- Design a strategy for integrating monitoring and feedback to development teams
- Design an authentication and access strategy
- Design a strategy for integrating on-premises and cloud resources
Tema 2: Implement DevOps Development Processes (20-25%)
Design a version control strategy
- Recommend branching models
- Recommend version control systems
- Recommend code flow strategy
Implement and integrate source control
- Integrate external source control
- Integrate source control into third-party continuous integration and continuous deployment (CI/CD) systems
Implement and manage build infrastructure
- Implement private and hosted agents
- Integrate third party build systems
- Recommend strategy for concurrent pipelines
- Manage VSTS pipeline configuration (e.g. agent queues, service endpoints, pools, webhooks)
Implement code flow
- Implement pull request strategies
- Implement branch and fork strategies
- Configure branch policies
Implement a mobile DevOps strategy
- Manage mobile target device sets and distribution groups
- Manage target UI test device sets
- Provision tester devices for deployment
- Create public and private distribution groups
Managing application configuration and secrets
- Implement a secure and compliant development process
- Implement general (non-secret) configuration data
- Manage secrets, tokens, and certificates
- Implement applications configurations (e.g. Web App, Azure Kubernetes Service, containers)
- Implement secrets management (e.g. Web App, Azure Kubernetes Service, containers, Azure Key Vault)
- Implement tools for managing security and compliance in the pipeline
Tema 3: Implement Continuous Integration (10-15%)
Manage code quality and security policies
- Monitor code quality
- Configure build to report on code coverage
- Manage automated test quality
- Manage test suites and categories
- Monitor quality of tests
- Integrate security analysis tools (e.g. SonarQube, WhiteSource Bolt, Open Web Application Security Project)
Implement a container build strategy
- Create deployable images (e.g. Docker, Azure Container Registry)
- Analyze and integrate Docker multi-stage builds
Implement a build strategy
- Design build triggers, tools, integrations, and workflow
- Implement a hybrid build process
- Implement multi-agent builds
- Recommend build tools and configuration
- Set up an automated build workflow
Tema 4: Implement Continuous Delivery (10-15%)
Design a release strategy
- Recommend release tools
- Identify and recommend release approvals and gates
- Recommend strategy for measuring quality of release and release process
- Recommend strategy for release notes and documentation
- Select appropriate deployment pattern
Set up a release management workflow
- Automate inspection of health signals for release approvals by using release gates
- Configure automated integration and functional test execution
- Create a release pipeline (e.g. Azure Kubernetes Service, Service Fabric, WebApp)
- Create multi-phase release pipelines
- Integrate secrets with release pipeline
- Provision and configure environments
- Manage and modularize tasks and templates (e.g. task and variable groups)
Implement an appropriate deployment pattern
- Implement blue-green deployments
- Implement canary deployments
- Implement progressive exposure deployments
- Scale a release pipeline to deploy to multiple endpoints (e.g. deployment groups, Azure Kubernetes Service, Service Fabric)
Tema 5: Implement Dependency Management (5-10%)
Design a dependency management strategy
- Recommend artifact management tools and practices
- Abstract common packages to enable sharing and reuse
- Inspect codebase to identify code dependencies that can be converted to packages
- Identify and recommend standardized package types and versions across the solution
- Refactor existing build pipelines to implement version strategy that publishes packages
Manage security and compliance
- Inspect open source software packages for security and license compliance to align with corporate standards (e.g. GPLv3)
- Configure build pipeline to access package security and license rating (e.g. Black Duck, White Source)
- Configure secure access to package feeds
Tema 6: Implement Application Infrastructure (15-20%)
Design an infrastructure and configuration management strategy
- Analyze existing and future hosting infrastructure
- Analyze existing Infrastructure as Code technologies
- Design a strategy for managing technical debt on templates
- Design a strategy for using transient infrastructure for parts of a delivery lifecycle
- Design a strategy to mitigate infrastructure state drift
Implement Infrastructure as Code
- Create nested resource templates (link adicional)
- Manage secrets in resource templates (link adicional)
- Provision Azure resources
- Recommend an Infrastructure as Code (IaC) strategy
- Recommend appropriate technologies for configuration management
Manage Azure Kubernetes Service infrastructure
- Provision Azure Kubernetes Service (e.g. using ARM templates, CLI)
- Create deployment file for publishing to Azure Kubernetes Service (e.g. kubectl, Helm)
- Develop a scaling plan
Implement infrastructure compliance and security
- Implement compliance and security scanning
- Prevent drift by using configuration management tools
- Set up an automated pipeline to inspect security and compliance
Tema 7: Implement Continuous Feedback (10-15%)
Recommend and design system feedback mechanisms
- Design practices to measure end-user satisfaction (e.g. Send a Smile, app analytics)
- Design processes to capture and analyze user feedback from external sources (e.g. Twitter, Reddit, Help Desk)
- Design routing for client application crash report data (e.g. HockeyApp)
- Recommend monitoring tools and technologies
- Recommend system and feature usage tracking tools
Implement process for routing system feedback to development teams
- Configure crash report integration for client applications
- Develop monitoring and status dashboards
- Implement routing for client application crash report data (e.g. HockeyApp)
- Implement tools to track system usage, feature usage, and flow
- Integrate and configure ticketing systems with development team’s work management system (e.g. IT Service Management connector, ServiceNow Cloud Management, App Insights work items)
Optimize feedback mechanisms
- Analyze alerts to establish a baseline
- Analyze telemetry to establish a baseline
- Perform live site reviews and capture feedback for system outages
- Perform ongoing tuning to reduce meaningless or non-actionable alerts
Está algo largo el contenido, ¿no? Mmm, yo digoooo que deberíamos estudiar en grupo 😛
¿Qué tal te pareció la entrada? Espero haya sido de tu interés, no olvides compartirla con tus amigos o a quien pueda interesarle realizar un examen de certificación/aprender sobre DevOps =)
¡Gracias por tu visita!
¡Hasta la próxima!
Luis