Easy concepts in DevOps & Cloud, page 3
Docker Login: Authenticating to a Container Registry
docker login saves your credentials for a container registry, letting you push and pull private images. Use it before interacting with private repos on Docker Hub, ECR, or GCR. The footgun: credentials are often stored unencrypted by default.
Docker Image Prune: Reclaim Your Disk Space
Docker image prune is a garbage collector for your local Docker setup, deleting unused images to free up disk space. Use it when low on storage after many builds. The footgun: by default, it only removes *dangling* (untagged) images, not all unused ones.
VPC: Your Private Slice of the Public Cloud
A Virtual Private Cloud (VPC) is your private, fenced-off section of a public cloud. You use it to launch resources like servers and databases in a logically isolated network, controlling all traffic.
Unit Testing: Verifying Code's Smallest Parts
Think of unit tests as checking each Lego brick for defects before building the castle. They confirm your smallest code pieces, like a single function, behave correctly in isolation.
Time-Series Databases: Optimized for Data Over Time
A Time-Series Database (TSDB) is a database optimized for data where time is the primary key. It's the backbone for monitoring systems, IoT devices, and financial apps. The footgun is using a regular database, which can't handle the unique query load.
CIDR: Flexible IP Address Blocks
CIDR groups IP addresses into flexible blocks, replacing rigid A/B/C classes. You use it to define network ranges like 10.0.0.0/16 for a VPC. The footgun: a smaller slash number like /16 means a *larger* network than a bigger number like /24.
Integration Testing: Do Your Components Play Well Together?
Integration testing verifies that different software modules, like an API and a database, work correctly together. It's used to catch bugs in the interactions between components, such as data format mismatches. The footgun is writing slow, brittle tests.
Log Aggregation: Centralize Your System's Story
Log aggregation funnels scattered logs from many servers into one central, searchable system. It's crucial for debugging distributed systems where one request touches many services.
Cloud Subnets: Your Virtual Network's Neighborhoods
Think of a subnet as a neighborhood in your virtual network (VPC), giving a block of IP addresses to a group of resources. Use them to isolate web servers from databases or apply specific firewall rules.
Smoke Testing: Is This Build Even Worth Testing?
Smoke testing asks: 'Is this build so broken it's not even worth testing?' It's a quick, shallow check of critical functions, run on every new build before more exhaustive QA. The footgun is thinking a passed smoke test means the build is bug-free.

Prometheus: Monitoring with a Dimensional Data Model
Prometheus models system health as labeled time series, not just flat metrics. It pulls data from targets, making it ideal for dynamic cloud environments like Kubernetes. The footgun is using high-cardinality labels, which can overwhelm its storage.

Security Groups: Stateful Firewalls for Your Cloud Resources
A security group is a stateful firewall for your cloud resources, like a bouncer with an allow-list. Use it to let a web server accept traffic or a database talk to app servers. The footgun: opening SSH to the entire internet (0.0.0.0/0).

Grafana: Your Single Pane of Glass for Observability
Grafana is the universal dashboard for your system's health, visualizing metrics, logs, and traces from different sources in one place. Use it to monitor application performance and infrastructure health.
Content Delivery Network (CDN): Serving Content from the Edge
A CDN is like a global chain of convenience stores for your website's assets. It caches copies closer to users for faster delivery, speeding up images, CSS, and video. The footgun: accidentally caching private user data and serving it to everyone.

Kubernetes Pods: The Atomic Unit of Deployment
A Pod is the smallest deployable unit in Kubernetes, a wrapper for one or more containers that run together on one machine. It's used for tightly coupled 'sidecar' helpers, like a log shipper.

Labels and Selectors: The Glue of Kubernetes
Labels are key-value tags for organizing Kubernetes objects; selectors are queries to find them. This is how a Service finds its Pods. The main footgun is a mismatched selector, which orphans Pods from the Deployment that created them.
Package Manifest: Your Project's List of Ingredients
A package manifest is your project's recipe, listing all dependencies and build scripts. Package managers use it to install the right libraries. The footgun is forgetting that the manifest (e.g., package.json) and the lockfile work together for consistency.
Semantic Versioning: A Three-Part Numbering System
Semantic Versioning (SemVer) is a widely used convention for assigning software versions. It uses a three-part Major.Minor.Patch number to create unique identifiers for software states.
On-Call Rotations: Engineering Reliability Under Pressure
On-call rotations are the human backstop for service reliability, with engineers responding to alerts in minutes. This is critical for high-availability services like search or email.
Docker Registry: A Library for Your Images
A Docker Registry is like GitHub, but for Docker images. It's a centralized storage system where you push and pull images, enabling sharing and deployment. The biggest footgun is using the :latest tag, which can lead to unpredictable builds.
We are hiring for this. Every open role lists the topics its interview covers, so you can prepare for the real thing rather than guessing.
See open roles