Get in Touch

Course Outline

Day 1: Cloud Fundamentals and Key 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 considerations and disaster recovery targets (RTO, RPO).

Part II: Essential Cloud Services

  1. Storage and data foundations: Azure Table Storage and Azure Cosmos DB.
  2. Compute and container orchestration: Azure Kubernetes Service (AKS) and Azure Container Registry (ACR).
  3. Relational data management and messaging: Azure SQL Database and Azure Service Bus.
  4. Practical exercises for each service: configuring, deploying, and evaluating them based on availability, performance, security, and pricing metrics.
  5. Implementing Infrastructure as Code using Bicep to ensure reproducible environments.

Day 2: Architectural Leadership and Clean Architecture

Part III: The Role of the Architect

  1. Defining software architecture and understanding different architectural viewpoints.
  2. The responsibilities, roles, and decision-making ownership of a software architect.
  3. Communicating architecture specifications effectively with both technical and business stakeholders.
  4. A practical pathway to becoming an effective software architect.

Part IV: Managing Dependencies within Monoliths

  1. Principles of Clean Architecture: separation of concerns, dependency direction, and long-term maintainability.
  2. Choosing the appropriate cloud services for monolithic modernisation, including an analysis of pros and cons.
  3. Practical lab: constructing 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. Fundamentals of Domain-Driven Design: defining domain boundaries, establishing a ubiquitous language, and model-driven design.
  2. Concepts of CQRS and Event Sourcing tailored for complex, evolving business domains.
  3. Architectural patterns commonly employed in DDD-based cloud solutions.
  4. Practical lab: implementing Event Sourcing as a requirement-driven design technique, mapping from requirements to events, aggregates, and event flows.

Part VI: Microservices

  1. Principles of microservices architecture and the trade-offs inherent in distributed systems.
  2. Selecting the right cloud services for microservices-based solutions, evaluating advantages and disadvantages.
  3. Synchronous and asynchronous communication patterns in microservices, including reliability strategies like circuit breakers and resiliency techniques.
  4. Ensuring testability in microservices and CI/CD pipelines: contract testing, defining integration testing boundaries, automated quality gates, and deployment confidence.
  5. Practical lab: building and deploying microservices on Azure using .NET.

Requirements

  • Proficiency in an advanced programming language, such as C# or Java.
  • Fundamental understanding of the architectural styles covered in the course.
  • Basic experience with cloud service platforms.
  • A minimum of five years in software engineering.
 21 Hours

Number of participants


Price per participant

Testimonials (2)

Upcoming Courses

Related Categories