Course Outline

Part I: Domain Modeling and Design for Government

  • Principles of Domain-Driven Design for government operations

  • Utilizing event storming to discover domains within public sector contexts

  • Defining bounded contexts and context mapping for improved governance

  • Establishing data ownership and adhering to the database-per-service principle in government systems

Part II: Contracts and Communication for Government

  • Designing robust contracts for inter-service communication

  • Implementing API versioning and evolution strategies to ensure compatibility and scalability

  • Exploring synchronous communication patterns for efficient service interactions

  • Utilizing asynchronous communication patterns to enhance system resilience and performance

Part III: Building Microservices for Government

  • Implementing clean architecture structures for modular and maintainable microservices

  • Managing dependencies and addressing security considerations in government applications

  • Introduction to Dapr (Distributed Application Runtime) for enhancing microservice capabilities

  • Facilitating secure service-to-service communication within government environments

  • Managing state effectively in distributed systems for government use cases

  • Implementing pub/sub messaging patterns to support real-time data exchange

  • Managing secrets and configurations securely in government applications

  • Enhancing observability through built-in telemetry for improved system monitoring

Part IV: Testing Strategies for Government

  • Conducting heartbeat tests to ensure service availability and performance

  • Implementing end-to-end testing to validate system integrations

  • Performing service-level testing to verify individual component functionality

Part V: Infrastructure for Government

  • Utilizing Infrastructure as Code (Bicep) for consistent and automated deployment of government resources

  • Leveraging containers and orchestration tools (Kubernetes / Azure Container Apps) to manage government applications

  • Developing infrastructure pipelines for efficient deployment processes in the public sector

  • Selecting and configuring storage and database services for government data management

Part VI: Deployment for Government

  • Establishing CI/CD pipelines to automate the deployment of government applications

  • Implementing deployment rings to manage phased rollouts and minimize disruptions

  • Using feature flags to control the release of new features in a controlled manner

Part VII: Observability for Government

  • Centralizing logging to aggregate and analyze system events across government services

  • Implementing distributed tracing to track transactions and identify performance bottlenecks

  • Creating metrics and dashboards for real-time monitoring of government systems

  • Setting up monitoring and alerting mechanisms to proactively address issues in government applications

Part VIII: Resilience and Disaster Recovery for Government

  • Implementing health probes and readiness checks to ensure service reliability

  • Developing strategies to handle compute failures in government systems

  • Establishing infrastructure failure strategies to maintain continuity of operations

  • Implementing service-level failure handling to ensure robustness and reliability in government applications

Requirements

  • Proficient programming skills in at least one backend language (C#, Java, Python, or similar)
  • Fundamental knowledge of REST APIs and HTTP protocols
  • Experience with Git and version control methodologies
  • Basic familiarity with a cloud platform (e.g., Azure, AWS, or GCP), including deploying an application or navigating the portal

Target Audience

  • Development teams transitioning from monolithic systems to microservices for government and other public sector entities
  • Software architects responsible for designing distributed systems
  • Teams currently working with microservices who seek to enhance design, scalability, and reliability
  • Technical professionals interested in a practical, hands-on approach to cloud-native architecture
 21 Hours

Number of participants


Price per participant

Testimonials (3)

Upcoming Courses

Related Categories