Architecture 🏛️
Software architecture, system design, and engineering concepts.
Sections
System Design
Software Concepts
- Software Engineering — Proxies, DNS, multi-tenancy, and testing
- Programming Concepts — 4-stage progressive roadmap covering execution, memory (stack/heap), types, closures, paradigms, async, and serialization
Protocols
- Protocols - HTTP, gRPC, WebSocket
Languages
- Golang — 4-stage progressive roadmap covering syntax, data structures, interfaces, concurrency, systems programming, and production microservices
- Python — 4-stage progressive roadmap covering core syntax, OOP, modern typing, asyncio, Pydantic v2, FastAPI, and production engineering
Authentication
- Identity & Auth Curriculum — 6-stage, 26-module deep dive: OIDC, JWT, OAuth 2.x, SAML 2.0, SSO, federation, security, Keycloak capstone
- Stage 0 — Crypto, encoding, HTTP/TLS primitives
- Stage 1 — JWT deep dive + JOSE family
- Stage 2 — OAuth 2.0 (flows, PKCE, DPoP, 2.1)
- Stage 3 — OpenID Connect
- Stage 4 — Federation, SSO, SAML 2.0, B2B
- Stage 5 — Security, attacks, hardening
- Stage 6 — HA, performance, frontier standards
- Capstone — Keycloak reference lab + tabletop
Observability & Telemetry
- OpenTelemetry (OTel) — Tracing, Metrics, Logs, Collector, Semantic Conventions, and Context Propagation
Architecture Foundations
- Solutions Architecture - Solution architect role, NFRs, tradeoffs
- Thinking Like an Architect
- Software Planning - ADRs, RFCs, SLOs
- Non-Functional Requirements
Reliability
- Availability - SLA, SLO, error budgets
- Resilience - Circuit breakers, retries, graceful degradation
- Load Balancing
- Idempotency
Performance
- Caching - Cache patterns, Redis
- Rate Limiting
- Percentiles - p50, p95, p99
- Performance Testing
Security
- Security Architecture - CIA triad, zero-trust
- Shift Left - DevSecOps
- TOTP
API Design
Data Architecture
- Databases - Choosing a database, families and trade-offs
- PostgreSQL - MVCC, vacuum, indexes, connection pooling
- PostgreSQL replication and HA - Failover, backups, point-in-time recovery
- Redis - Data structures, persistence, caching patterns
- Event-driven architecture - Events, outbox, sagas, idempotency
- Apache Kafka - Partitions, replication, consumer groups, delivery semantics
- Hashing
- CDN
Architecture Patterns
Migration Patterns
- Migration Patterns - Blue-green, expand-contract, strangler fig, data migration
Cryptography
- Cryptography - PKI, TLS, signing
Developer Tooling
- Languages — Language-specific notes. The emphasis is on the parts of each language that matter for building and operating backend services.
- Data Architecture — Data modeling, database selection, and data flow architecture
- Reliability — Patterns for building fault-tolerant, highly available distributed systems
- Security — Security architecture patterns, zero-trust, and secure-by-design principles
More in this section
- Architecture Basics — Foundational concepts for understanding system architecture
Related
- Kubernetes Networking & Protocols
- Data Architecture & Databases
- Kubernetes - Cloud-native architecture