Skip to content
tezvyn:

CI/CD & Automation

GitHub Actions, Terraform, ArgoCD, IaC, pipelines

85 bites

Test yourself: Top 30 advanced CI/CD & Automation interview questionsMultiple choice, with the correct answer and why it is correct on every question. Free, no sign-in.

Advanced everything in CI/CD & Automation, page 3

Platform API: The Contract for Your Developer Platform
advanced2 min read

Platform API: The Contract for Your Developer Platform

The Platform API is the central contract for your internal developer platform, abstracting complex tooling into simple, self-service actions. It's what a developer portal or CLI calls to provision a database or scaffold a new service without knowing the…

advanced2 min read

Argo AnalysisTemplates: Reusable Health Checks for Deployments

An AnalysisTemplate is a reusable recipe for judging a deployment's health. During a canary rollout, Argo uses it to query metrics like error rates to decide whether to promote or roll back the new version.

advanced2 min read

Argo CD ApplicationSet: Manage Many Applications as One

Think of an ApplicationSet as a factory for Argo CD Applications. It uses a template and generators to automatically create apps for many clusters or services in a monorepo.

advanced2 min read

Argo CD Image Updater: Automate Image Updates

An Image Updater automates deployments by watching for new container image versions and telling Argo CD to update your app. It's used to automatically roll out new builds, but misconfiguring update strategies can accidentally deploy unstable tags to…

advanced2 min read

Flagger: Progressive Delivery for Kubernetes

Flagger is an automated traffic cop for Kubernetes releases. It gradually shifts traffic to new versions while monitoring metrics, enabling safe canary or blue/green deployments with service meshes or ingress controllers.

eBPF: Run Sandboxed Programs in the Linux Kernel
advanced2 min read

eBPF: Run Sandboxed Programs in the Linux Kernel

eBPF lets you run sandboxed programs directly in the Linux kernel, like adding programmable event handlers to your OS. This enables high-performance networking, security, and observability without changing kernel code.

advanced2 min read

Chaos Engineering: Break Systems to Build Confidence

Chaos Engineering is like a fire drill for your software: you intentionally break things in a controlled way to find weaknesses. It's used in distributed systems to test resilience against server failures or network latency.

advanced2 min read

Analyzing Flaky Tests

A flaky test passes and fails randomly without code changes, eroding trust in your CI pipeline. It often points to race conditions or external dependencies. The biggest footgun is ignoring them, as this teaches developers to dismiss real failures.

advanced2 min read

CI/CD and the Principle of Least Privilege

Treat your CI/CD pipeline like a temporary worker, not a superuser. Grant it only the minimum permissions needed for its specific task, like building code or deploying to staging.

advanced2 min read

RASP: An Immune System for Your Application

Think of RASP as an application's immune system, using runtime instrumentation to block attacks from within. It provides real-time protection against threats that static analysis or network firewalls miss.

Environment Gating: Automated Go/No-Go for Deployments
advanced2 min read

Environment Gating: Automated Go/No-Go for Deployments

Environment gating is an automated checklist for your CI/CD pipeline. Instead of just building code, it checks external signals like monitoring alerts or bug trackers before promoting a release.

advanced2 min read

Release Orchestration: Air Traffic Control for Deployments

Release Orchestration is the air traffic control for software delivery, coordinating multiple pipelines and teams. It's used for complex launches with interdependent services, ensuring everything deploys in the correct sequence.

Progressive Delivery: Ship Faster by Reducing Blast Radius
advanced2 min read

Progressive Delivery: Ship Faster by Reducing Blast Radius

Progressive Delivery reduces release risk by shipping to small user groups before a full rollout, like a soft-opening for new code. It uses canary releases and feature flags to catch issues before they impact everyone.

Kubernetes Operators: SREs in a Box
advanced2 min read

Kubernetes Operators: SREs in a Box

Think of an Operator as an automated site reliability engineer for your app, encoding human knowledge into software. It's used to manage complex stateful applications like databases, automating tasks like backups and upgrades.

advanced2 min read

CNI: The Universal Plug for Container Networking

CNI is the standard API that decouples container runtimes from network implementations. In Kubernetes, it lets you swap networking plugins like Calico or Flannel.

advanced2 min read

Service Mesh: The Network Layer for Your Microservices

A service mesh acts as a dedicated network layer for microservices, handling complex communication logic outside your application. It enables features like mTLS and canary releases.

Kubernetes StatefulSets: Stable Identity for Pods
advanced2 min read

Kubernetes StatefulSets: Stable Identity for Pods

A StatefulSet gives pods a stable, unique identity and persistent storage, unlike a Deployment's interchangeable replicas. Use it for clustered databases or queues where members need stable network names.

advanced2 min read

External Secrets Operator: Sync Secrets into Kubernetes

The External Secrets Operator (ESO) acts as a bridge, syncing secrets from an external store like Vault or AWS Secrets Manager into native Kubernetes Secrets. This keeps secrets out of Git and centralizes management.

advanced2 min read

Kubernetes Sealed Secrets: Git-Friendly Secret Management

Sealed Secrets let you safely commit encrypted Kubernetes secrets to a public Git repo. A one-way lockbox: anyone can add a secret, but only the target cluster can unlock it. Essential for GitOps, but remember: a Sealed Secret is tied to its cluster.

advanced2 min read

Cloud-Init: Bootstrapping Cloud Instances

Cloud-init is the script that runs on a generic VM's first boot to turn it into *your* server. It's used by cloud providers to apply your user-data (like SSH keys and startup scripts) at launch. The biggest footgun: it only runs once on first boot.

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