DevOps & Operations
Infrastructure, deployment, and monitoring practices.69 topics total.
Deployment & Delivery
12 topicsCI/CD pipelines, release strategies, artifact management, and rollbacks.
CI/CD pipeline architecture
RequiredContinuous Integration and Continuous Deployment (CI/CD) pipelines automate the testing, building, and release of software. They enforce parity between environments and remove manual intervention from the release path.
Blue-green deployment
RequiredBlue-green deployment runs two identical production environments simultaneously. Only one serves live traffic at a time, allowing instant rollbacks by routing traffic back to the previous environment.
Canary releases
RequiredA canary release deploys a new version to a small subset of users before rolling it out to the entire infrastructure. This limits the blast radius of unexpected failures.
Rolling updates
RequiredA rolling update replaces instances of an application incrementally. This allows deployments to proceed without taking the entire service offline, maintaining capacity while transitioning to a new version.
Feature flags and progressive delivery
RequiredFeature flags decouple deployment from release. They allow code to ship to production in a dormant state, and enable teams to turn features on or off dynamically without redeploying the application.
Docker Compose specification
RequiredThe Compose specification defines a developer-centric model for multi-container applications. It standardizes how services, networks, and volumes are declared in YAML.
Zero-downtime database migrations
RequiredThe strategy of decoupling schema changes from application deployments, allowing databases to be restructured without locking tables or interrupting live customer traffic.
GitOps as a deployment model
RecommendedAn operational framework where a Git repository acts as the single source of truth for declarative infrastructure and applications, relying on software agents to continuously pull and synchronize the desired state.
OCI image specification
RequiredThe Open Container Initiative (OCI) Image Format Specification standardizes how container images are built, packed, and signed. It ensures interoperability between different container engines and registries.
Semantic Versioning (SemVer) in release pipelines
RequiredSemantic Versioning (SemVer) is a formal convention for assigning version numbers to software releases. It dictates how version numbers reflect the nature of underlying code changes, enabling automated dependency resolution.
Artifact registries and immutable builds
RequiredArtifact registries store compiled software components. Immutable builds guarantee that a compiled artifact never changes once pushed, ensuring the exact code tested is the exact code deployed.
Rollback strategies
RequiredA rollback strategy defines how a system reverts to a previous stable state after a failed deployment. Automated and tested rollbacks are essential for maintaining service level objectives.
Infrastructure & Provisioning
11 topicsInfrastructure as Code, immutable infrastructure, and state management.
Infrastructure as Code principles
RequiredCore principles of defining environments through machine-readable code, enabling idempotency, desired state configuration, and automated reconciliation.
Terraform state management
RequiredManaging, locking, and securing Terraform state files, the critical mapping layer between declarative code and cloud provider APIs.
Immutable infrastructure
RecommendedThe practice of replacing infrastructure components entirely rather than modifying them in place, guaranteeing consistency and eliminating configuration drift.
Configuration drift and reconciliation
RecommendedDetecting and automatically correcting drift between the desired state defined in version control and the actual state of the running environment.
Secrets management patterns
RequiredPatterns for dynamically issuing and revoking temporary credentials, eliminating hardcoded secrets and secret sprawl.
Environment parity (dev/staging/prod)
RequiredKeeping development, staging, and production environments as similar as possible to prevent deployment failures caused by configuration differences.
DNS and service discovery
RequiredUsing the Domain Name System to dynamically locate and route traffic to ephemeral services in distributed architectures.
Load balancer health checks
RequiredAutomated probes used by load balancers to determine if a backend server is capable of handling traffic, preventing requests from being routed to failed instances.
Autoscaling policies
RecommendedStrategies for dynamically adjusting the number of active computing resources based on real-time demand, ensuring performance while minimizing costs.
cron syntax
RequiredThe POSIX standard syntax for scheduling recurring background jobs, specifying the exact minute, hour, day, and month a script should execute.
Capacity planning and load forecasting
RecommendedThe analytical process of predicting future system resource requirements based on historical trends, business projections, and known scaling constraints.
Containers & Orchestration
12 topicsKubernetes, container lifecycles, and resource allocation.
Kubernetes API objects reference
RequiredThe foundational declarative resources used to orchestrate containers, manage networking, and handle configuration in Kubernetes.
Pod lifecycle and probes
RequiredManaging container health and traffic routing using liveness, readiness, and startup probes.
Kubernetes networking model
RequiredThe foundational network guarantees of Kubernetes, where every Pod gets a unique IP and can communicate without NAT.
Resource requests and limits
RequiredDefining minimum guaranteed resources and maximum caps to prevent noisy neighbor problems and node starvation.
Container image layering and caching
RecommendedOptimizing container builds by structuring Dockerfiles to maximize cache hits, reduce build times, and minimize the final image footprint.
systemd unit files
RequiredDefining and managing long-running background services, dependencies, and restart policies using the Linux init system.
Sidecar container patterns
RecommendedDeploying helper containers alongside a primary application container within the same Pod to augment its functionality without modifying its code.
Network namespaces and isolation
RequiredThe Linux kernel features that provide containers with their own independent network stacks, interfaces, and routing tables.
Helm chart structure
RequiredThe standardized directory and file layout required to package, configure, and deploy applications as Helm charts on Kubernetes.
cgroups fundamentals
RequiredThe Linux kernel feature that limits, accounts for, and isolates the resource usage (CPU, memory, disk I/O) of a collection of processes.
Kubernetes NetworkPolicy and network segmentation
RequiredThe standard specification for explicitly defining which pods are allowed to communicate with each other, enforcing a zero-trust network model within a cluster.
Container image scanning and provenance
RecommendedThe automated process of inspecting container images for known vulnerabilities (CVEs) and cryptographically verifying their origin to prevent supply chain attacks.
Monitoring & Observability
11 topicsMetrics, distributed tracing, and structured logging formats.
The three pillars of observability
RecommendedThe foundational data types - Metrics, Logs, and Traces - required to understand the internal state of a complex distributed system.
High-cardinality metrics
RecommendedUnderstanding the cost and performance impact of attaching highly unique labels, like user IDs, to time-series metrics data.
Distributed tracing and trace IDs
RequiredTracking a single request as it travels across multiple network boundaries and microservices using injected context headers.
Structured logging vs unstructured
RequiredThe shift from human-readable text logs to machine-parsable JSON logs to enable complex querying and automated alerting.
Log aggregation and indexing
RecommendedCentralizing logs from distributed ephemeral containers into a searchable, indexed database.
Alert fatigue and actionable alerting
RequiredDesigning alerts that require human intervention and eliminating noisy warnings that train engineers to ignore paging systems.
Service Level Objectives (SLOs)
RequiredDefining numerical targets for system reliability that balance the need for feature velocity against the risk of user-facing outages.
The four golden signals
RequiredThe essential metrics - Latency, Traffic, Errors, and Saturation - that provide a complete picture of a service's health.
OpenTelemetry specification
RequiredA vendor-neutral standard for generating, collecting, and exporting telemetry data across modern distributed systems.
Prometheus exposition format
RequiredThe open, text-based standard for exposing dimensional metric data over HTTP so that monitoring systems can scrape and index it.
Health Check Response Format (RFC)
RequiredThe IETF standard (RFC 9474) defining a consistent, machine-readable JSON schema for APIs and microservices to report their health status to orchestrators.
Reliability & Incident Response
15 topicsIncident management, chaos engineering, and runbook design.
Incident command system (ICS)
RecommendedA standardized, hierarchical management structure designed to coordinate emergency response and eliminate chaos during severe outages.
Blameless postmortems
RecommendedThe practice of investigating outages without assigning human fault, focusing instead on the systemic vulnerabilities that allowed the failure to occur.
Mean Time To Recovery (MTTR)
RecommendedA critical metric that measures how quickly a team can diagnose, mitigate, and resolve a production outage.
Runbooks and playbooks
RecommendedExplicit, step-by-step technical manuals designed to guide engineers through mitigating specific alerts and routine operational tasks.
Chaos engineering principles
RecommendedThe discipline of experimenting on a distributed system to build confidence in its capability to withstand turbulent conditions in production.
Rate limiting strategies
RequiredTechniques for controlling the rate of traffic sent or received by a network interface controller to prevent resource exhaustion.
Circuit breaker pattern
RecommendedA software design pattern used to detect failures and encapsulate the logic of preventing a failure from constantly recurring, during maintenance, temporary external system failure or unexpected system difficulties.
Bulkhead pattern
RecommendedIsolating elements of an application into pools so that if one fails, the others will continue to function, preventing total system collapse.
Retry with exponential backoff and jitter
RequiredA network resilience strategy that spaces out repeated requests to a failing service to prevent self-inflicted Denial of Service attacks.
Uptime monitoring architecture
RequiredThe design of external, black-box monitoring systems that verify a service is actually reachable and functioning from the perspective of a user.
Incident severity classification
RequiredA standardized scale (usually SEV-1 to SEV-4) used to instantly communicate the business impact of an outage and determine the appropriate level of response.
Graceful degradation patterns
RecommendedDesigning systems to intentionally disable non-critical features during high load or partial outages to preserve core functionality.
On-call rotation design
RecommendedThe operational structures and human-centric schedules that ensure a system is supported 24/7 without burning out the engineering team.
Disaster recovery and RPO/RTO
RequiredThe strategies and metrics used to restore business operations after a catastrophic event, focusing on acceptable data loss (RPO) and downtime (RTO).
Backpressure and flow control
RecommendedThe mechanisms by which a downstream system signals an upstream sender to slow down its transmission rate, preventing catastrophic resource exhaustion.
Networking & Protocols
8 topicsOperational semantics for HTTP, TLS, and load balancing.
Service mesh basics
RecommendedA dedicated infrastructure layer for managing, securing, and observing service-to-service communication within a microservices architecture.
TLS certificate rotation
RequiredThe automated process of replacing cryptographic certificates before they expire to maintain secure HTTP connections without downtime.
HTTP retry-after semantics
RecommendedThe standardized HTTP header used by servers to explicitly tell clients exactly how long to wait before attempting a failed request again, preventing thundering herds.
TCP keepalive
RecommendedA mechanism at the transport layer that periodically sends empty probe packets across an idle connection to ensure the peer is still reachable and to prevent firewalls from dropping the connection.
webhook delivery
RecommendedAn event-driven architectural pattern where one service sends automated HTTP POST requests to another service the moment an event occurs, replacing continuous polling.
Identity and access management for infrastructure (IAM/RBAC)
RecommendedThe principles of authenticating entities (users and machines) and authorizing their specific permissions across cloud environments and clusters.
PKI and certificate authority fundamentals
RecommendedThe cryptographic trust framework that enables secure communication over untrusted networks via digital certificates and mathematical proof of identity.
Idempotency keys in distributed systems
RecommendedThe architectural mechanism for ensuring that retrying a failed network request never results in a duplicated action, such as charging a customer's credit card twice.