Get in Touch

Course Outline

Day 1: Cloud Essentials and Core Services

Part I: Foundations of Cloud Architecture

  1. Core cloud architecture principles and non-functional requirements, including availability, scalability, security, and performance
  2. Cloud adoption models and their respective 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 systems and disaster recovery objectives (RTO and RPO)

Part II: Core Cloud Services

  1. Storage and data fundamentals: Azure Table Storage and Azure Cosmos DB
  2. Compute and container orchestration: Azure Kubernetes Service (AKS) and Azure Container Registry (ACR)
  3. Relational databases and messaging systems: Azure SQL Database and Azure Service Bus
  4. Practical exercises for each service: covering configuration, deployment, and assessment based on availability, performance, security, and cost
  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 understanding various architectural viewpoints
  2. Specific roles, responsibilities, and decision-making authority of a software architect
  3. Specifying architecture and communicating effectively with both technical and business stakeholders
  4. A practical roadmap for becoming a successful software architect

Part IV: Managing Dependencies in Monoliths

  1. Clean Architecture principles: focusing on separation of concerns, dependency direction, and long-term maintainability
  2. Choosing appropriate cloud services for modernizing monolithic applications, weighing the advantages and disadvantages
  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. Domain-Driven Design essentials: 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: utilizing Event Sourcing as a requirements-driven design method, mapping requirements to events, aggregates, and event flows

Part VI: Microservices

  1. Principles of microservices architecture and the trade-offs involved in distributed systems
  2. Selecting cloud services for microservices-based solutions, analyzing the pros and cons
  3. Synchronous versus asynchronous communication in microservices, incorporating reliability patterns like circuit breakers and resilience strategies
  4. Ensuring testability in microservices and CI/CD pipelines: covering contract testing, integration test boundaries, automated quality gates, and deployment assurance
  5. Practical lab: building and deploying microservices on Azure using .NET

Requirements

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

Number of participants


Price per participant

Testimonials (3)

Upcoming Courses

Related Categories