Tech Tree · Architecture
Cloud Native Journey
Evolve your application architecture from a monolithic codebase to a fully cloud-native, serverless platform. Each node represents a concrete capability with steps, effort estimates, and the cross-track dependencies that mirror real-world migration sequencing.
Maturity tiers
Monolith
A single deployable unit. Simple to start but increasingly painful to scale, test, and release independently.
Services
The monolith is broken into coarse-grained services with defined APIs, containerised and deployed independently.
Microservices
Fine-grained services with independent data stores, orchestrated by a scheduler, and hardened for partial failure.
Serverless
Functions and managed services handle compute. The platform scales to zero, costs track usage, and ops overhead is minimal.
Tracks
Architecture
How the application is structured, decomposed, and how components communicate.
Deployment
How software is packaged, shipped, and updated in production.
Resilience
How the system detects, tolerates, and recovers from failures.
Scale
How the system handles growing load, data volume, and global distribution.
All capabilities (16)
Monolith
Basic CI Pipeline
Every commit triggers an automated build, lint, and test run. A failing build blocks the merge — the prerequisite for safe, frequent deployments.
ci · automation · foundation
Health Check Endpoints
Every service exposes a liveness and readiness endpoint so load balancers and orchestrators can route traffic only to healthy instances.
health-check · resilience · observability
Horizontal Scaling
The application runs as multiple identical instances behind a load balancer. Stateless design (sessions externalised) makes this safe to enable.
scaling · stateless · load-balancing
Modular Monolith
Organise the codebase into well-defined internal modules with enforced boundaries. A modular monolith is far easier to decompose into services later than an unstructured one.
monolith · ddd · modularisation · foundation
Services
API Gateway
A single, managed entry point routes external requests to downstream services, handles authentication, rate limiting, and protocol translation.
api-gateway · ingress · security
Containerisation
Services are packaged as OCI-compliant container images. Immutable, versioned images eliminate environment drift and enable consistent deploys.
docker · containers · devops
Database per Service
Each service owns its own datastore. Shared databases are the most common source of coupling that prevents independent deployments and team autonomy.
database · decoupling · ddd · strangler-fig
Structured Logging & Tracing
All services emit JSON-structured logs with correlation IDs. Distributed traces link operations across service boundaries, making failure diagnosis fast.
observability · logging · tracing · opentelemetry
Microservices
Circuit Breakers
Calls to unstable dependencies are wrapped in circuit breakers that open when failure rates spike, preventing cascading failures across the service graph.
circuit-breaker · resilience · fault-tolerance
Container Orchestration
Kubernetes (or an equivalent) schedules containers across a node pool, manages restarts, rolling updates, resource limits, and service discovery.
kubernetes · orchestration · k8s · helm
Horizontal Pod Autoscaling
The orchestrator automatically adjusts replica counts based on CPU, memory, or custom metrics. Services absorb traffic spikes without manual intervention.
autoscaling · hpa · keda · kubernetes
Service Mesh
A sidecar-based mesh (Istio, Linkerd) manages mTLS encryption, traffic shaping, retries, and observability between services without application code changes.
service-mesh · mtls · istio · linkerd
Serverless
Chaos Engineering
Controlled experiments inject failures — pod kills, network latency, disk saturation — into production to verify that the system's resilience assumptions hold under real conditions.
chaos-engineering · resilience · gameday
Edge Computing
Computation and caching are pushed to the network edge, co-located with users. Static assets, personalisation logic, and geolocation-aware routing happen before requests reach the origin.
edge · cdn · cloudflare · latency
Event-Driven Architecture
Services communicate by publishing and subscribing to domain events on a durable message bus. Temporal decoupling enables independent scaling and replay for new consumers.
event-driven · kafka · pubsub · async
Serverless Functions
Stateless, event-triggered functions (Lambda, Cloud Functions, Cloudflare Workers) handle burst workloads, background jobs, and integration glue without managing servers.
serverless · lambda · faas · workers