Arquitetura de Software & Design de Sistemas Modernos
- Descrição
- Currículo
- FAQ
- Revisões
O curso “Arquitetura de Software & Design de Sistemas Modernos” é uma jornada abrangente projetada para capacitar profissionais da tecnologia a dominar os princípios e padrões que sustentam sistemas de software robustos, escaláveis e de alta disponibilidade. Ideal para arquitetos de software, engenheiros de sistemas e desenvolvedores, este curso oferece uma sólida base sobre os patterns, cobrindo desde os fundamentos até técnicas avançadas de design e implementação.
Módulos e Conteúdo
-
Introdução / Vamos aquecer:
-
O curso começa com uma introdução ao treinamento, estabelecendo as expectativas e objetivos. Aborda os princípios de sucesso em arquiteturas de software e a importância do planejamento alinhado aos objetivos de negócio (OKRs).
-
-
Fundamentos de System Design e System Architecture:
-
Este módulo explora os fundamentos do design de sistemas, incluindo diversos tipos de arquitetura e a evolução das mesmas. Aborda tópicos como arquitetura em três camadas, sistemas stateless e stateful, monolitos versus microsserviços, e muito mais.
-
-
Padrões de Comunicação e Transações:
-
Foca em padrões essenciais para comunicação eficiente e transações, como Queues, PubSub, Event Driven Architectures (EDA), e diversos padrões de orquestração e coreografia.
-
-
Padrões de Armazenamento de Dados:
-
Explora técnicas de persistência de dados, incluindo Polyglot Persistence, Change Data Capture (CDC), e padrões de sharding e particionamento de banco de dados.
-
-
Padrões de Resiliência, Escalabilidade e Infraestrutura:
-
Aborda como projetar sistemas resilientes e escaláveis, utilizando patterns como Circuit Breaker, Retry, Service Mesh, e técnicas avançadas como Chaos Engineering.
-
-
Padrões de Design e Evolução de Aplicações:
-
Discute como evoluir e manter aplicações ao longo do tempo, utilizando patterns como Strangler Fig, Feature Toggles, e Anti-corruption Layer.
-
-
Padrões de Deployment:
-
Ensina estratégias de deployment eficientes e seguras, incluindo Blue-Green Deployment, Canary Release, e Shadow Deployment.
-
-
3Sobre o MóduloVídeo Aula
-
4Definindo: "Large Scale" e "Complex Archs"Vídeo Aula
-
5Principios de sucesso de arquiteturas de SoftwareVídeo Aula
-
6Qual o problema você quer resolver ? Planejamento alinhados ao negócioVídeo Aula
-
7Ciclo de mudanças de arquiteturaVídeo Aula
-
8High Availability vs Fault ToleranceVídeo Aula
-
9Escalabilidade Horizontal vs VerticalVídeo Aula
-
10SLO, SLI e SLAVídeo Aula
-
11RTO vs RPOVídeo Aula
-
12Sobre o MóduloVídeo Aula
-
13System Design vs System ArchitectureVídeo Aula
-
14Tipos de arquitetura e evoluçãoVídeo Aula
-
15Three-Tier ArchitectureVídeo Aula
-
16Stateless, Stateful e ImutabilidadeVídeo Aula
-
17Monolito vs Monolito ModularVídeo Aula
-
18Monolito vs MicrosserviçosVídeo Aula
-
19Arquitetura com ContainersVídeo Aula
-
20Tight Coupling and Loose CouplingVídeo Aula
-
21Arquitetura utilizando ServerlessVídeo Aula
-
22API e API Gateway PatternVídeo Aula
-
23Load Balancing PatternVídeo Aula
-
24SYNC vs ASYNC, Arquitetura baseada em Eventos/MensagensVídeo Aula
-
25Strong vs Eventual ConsistencyVídeo Aula
-
26ACIDVídeo Aula
-
27Caching de dados e de objetosVídeo Aula
-
28Multi-tenant e Single Tenant appVídeo Aula
-
29Sobre o MóduloVídeo Aula
-
30Queues, PubSub e Messaging Fanout PatternVídeo Aula
-
31Event Driven Architectures (EDA)Vídeo Aula
-
32Streaming vs MessagingVídeo Aula
-
33Choreography PatternVídeo Aula
-
34SAGA Pattern / Orchestration PatternVídeo Aula
-
35Choreography Pattern vs SAGA Pattern / Orchestration PatternVídeo Aula
-
36Event SourcingVídeo Aula
-
37Aggregator Design Pattern / API Composition PatternVídeo Aula
-
38Request Hedging PatternVídeo Aula
-
39Sobre o MóduloVídeo Aula
-
40Polyglot Persistence PatternsVídeo Aula
-
41database-per-service e shared-database-perservice patternVídeo Aula
-
42Change data capture (CDC) PatternVídeo Aula
-
43Transacional Outbox PatternVídeo Aula
-
44Normalização e Desnormalização de dados "Pattern" / Materialized viewVídeo Aula
-
45CQRS (Command Query Responsibility Segregation)Vídeo Aula
-
46Database Sharding PatternVídeo Aula
-
47Consistent HashingVídeo Aula
-
48Tecnicas de Sharding avançada (Shuffle Sharding)Vídeo Aula
-
49Cache-Aside PatternVídeo Aula
-
50Sobre o MóduloVídeo Aula
-
51Sidecar, Ambassador e Adapter PatternVídeo Aula
-
52Service MeshVídeo Aula
-
53Service Registry e Discovery PatternVídeo Aula
-
54Load SheddingVídeo Aula
-
55Load Shedding - ARTIGOSVídeo Aula
https://aws.amazon.com/blogs/networking-and-content-delivery/target-group-load-shedding-for-application-load-balancer/
https://netflixtechblog.com/keeping-netflix-reliable-using-prioritized-load-shedding-6cc827b02f94
-
56Circuit BreakerVídeo Aula
-
57Retry Pattern e DLQVídeo Aula
-
58Bulkhead / Isolation Pattern / Isolamento EstáticoVídeo Aula
-
59Traffic ShardingVídeo Aula
-
60Rate Limit / Throttling PatternVídeo Aula
-
61Sobre o MóduloVídeo Aula
-
66Sobre o MóduloVídeo Aula
-
67Como definir sua estratégia de deployment ?Vídeo Aula
-
68In-place Deployment vs Immutable Deployment e Agent vs AgentlessVídeo Aula
-
69Esteira Pipeline, Build e DeploymentVídeo Aula
-
70All at Once / Big Bang / One-Shot / Full DeploymentVídeo Aula
-
71Rolling / Incremental / Gradual / Phased DeploymentVídeo Aula
-
72Blue-Green DeploymentVídeo Aula
-
73Canary Release DeploymentVídeo Aula
-
74Shadow Deployment / Dark Launch / Shadow TestingVídeo Aula
