Get in Touch
 Duration 21 hours

Course Outline

Day 1: Cloud Fundamentals and Core Services

Part I: Cloud Architecture Basics

  1. Core principles of cloud architecture and non-functional requirements, including availability, scalability, security, and 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 Resources.
  4. Designing mission-critical architectures and setting disaster recovery targets (RTO, RPO).

Part II: Essential Cloud Services

  1. Storage and data fundamentals: Azure Table Storage and Azure Cosmos DB.
  2. Compute and container platforms: 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 pricing.
  5. Implementing Infrastructure as Code with Bicep to create reproducible environments.

Day 2: Architectural Leadership and Clean Architecture

Part III: The Role of the Architect

  1. Defining software architecture and understanding various architectural viewpoints.
  2. The responsibilities, duties, and decision-making ownership of the software architect.
  3. Specifying and communicating architecture to both technical and business stakeholders.
  4. A practical roadmap for becoming an effective software architect.

Part IV: Managing Dependencies in Monolithic Systems

  1. Clean Architecture principles: separation of concerns, dependency direction, and long-term maintainability.
  2. Choosing the right cloud services for monolith modernization, analyzing advantages and disadvantages.
  3. Hands-on lab: building 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. Domain-Driven Design fundamentals: 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 used in DDD-based cloud solutions.
  4. Hands-on lab: applying Event Sourcing as a requirements-driven design technique, mapping from requirements to events, aggregates, and event flows.

Part VI: Microservices

  1. Principles of microservices architecture and trade-offs in distributed systems.
  2. Selecting cloud services for microservices-based solutions, weighing pros and cons.
  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: contract testing, integration testing boundaries, automated quality gates, and deployment confidence.
  5. Hands-on lab: building and deploying microservices on Azure using .NET.

Requirements

  • Proficiency in an advanced programming language (C# or Java)
  • Fundamental understanding of the architectural styles covered in the course
  • Basic experience with cloud service platforms
  • At least five years of software engineering experience

Number of participants


Price per participant

Testimonials (2)

Upcoming Courses

Related Categories