Get in Touch

Course Outline

Day 1: Cloud Fundamentals and Core Services

Part I: Foundations of Cloud Architecture

  1. Core principles of cloud architecture and non-functional requirements (availability, scalability, security, performance).
  2. Cloud adoption models and associated trade-offs: IaaS, PaaS, SaaS, and the shared responsibility model.
  3. Key components of Azure architecture: Regions, Resource Groups, and individual Resources.
  4. Mission-critical architecture and defining disaster recovery targets (RTO and RPO).

Part II: Essential Cloud Services

  1. Storage and data basics: Azure Table Storage and Azure Cosmos DB.
  2. Compute and containerization: Azure Kubernetes Service (AKS) and Azure Container Registry (ACR).
  3. Relational data and messaging systems: Azure SQL Database and Azure Service Bus.
  4. Practical exercises for each service: covering configuration, deployment, and evaluation based on availability, performance, security, and cost criteria.
  5. Implementing Infrastructure as Code with Bicep to ensure reproducible environments.

Day 2: Architectural Leadership and Clean Architecture

Part III: The Role of the Architect

  1. Defining software architecture and various architectural viewpoints.
  2. Responsibilities of the software architect and ownership of key decisions.
  3. Specifying architecture and effectively communicating with both technical and business stakeholders.
  4. A practical pathway to becoming an effective software architect.

Part IV: Managing Dependencies in Monoliths

  1. Principles of Clean Architecture: separation of concerns, dependency direction, and long-term maintainability.
  2. Choosing the right cloud services for monolith modernization, including an analysis of pros and cons.
  3. Practical lab: developing and deploying a Clean Architecture solution on Azure using .NET.

Day 3: Domain-Driven and Distributed Architectures

Part V: DDD, CQRS, and Event Sourcing

  1. Foundations of Domain-Driven Design: defining domain boundaries, establishing a ubiquitous language, and model-driven design.
  2. Concepts of CQRS and Event Sourcing for managing complex, evolving business domains.
  3. Architectural patterns commonly employed in DDD-based cloud solutions.
  4. Practical lab: applying Event Sourcing as a requirements-driven design technique, moving from requirements to events, aggregates, and event flows.

Part VI: Microservices

  1. Core principles of microservices architecture and trade-offs in distributed systems.
  2. Selecting appropriate cloud services for microservices-based solutions, analyzing benefits and drawbacks.
  3. Synchronous and asynchronous communication styles in microservices, incorporating reliability patterns like circuit breakers and resiliency strategies.
  4. Testability in microservices and CI/CD pipelines: covering contract testing, integration testing boundaries, automated quality gates, and deployment confidence.
  5. Practical lab: developing and deploying microservices on Azure using .NET.

Requirements

  • Proficiency in an advanced programming language, specifically C# or Java.
  • Basic understanding of the architectural styles covered in the course.
  • Foundational experience working with cloud services.
  • At least five years of professional software engineering experience.
 21 Hours

Number of participants


Price per participant

Testimonials (2)

Upcoming Courses

Related Categories