#DevOps
— 11 posts
GitHub Actions for Automated Deployment: A Practical Guide
How to build deploy workflows that are fast, safe, and survive the 3 a.m. incident — secrets, environments, OIDC, caching, rollback, SSH vs runner-based, and the anti-patterns that catch every team once.
Observability with OpenTelemetry: A Practical End-to-End Guide
Instrumenting a production Node.js service for traces, metrics, and logs with OpenTelemetry — plus correlation by trace ID, exporter choices, and what breaks in production.
Zero-Downtime Database Migrations: The Expand/Contract Playbook
How to change a production schema without taking traffic down — expand/contract, backfills, dual-writes, online DDL, and the migrations that always bite you.
Feature Flags and Progressive Delivery in Production
From kill switches to percentage rollouts — how to decouple deploy from release, evaluate self-hosted vs SaaS flag platforms, and keep flag debt from eating your codebase.
Monorepo Strategy in 2026: pnpm, Turborepo, Nx, and Friends
When a monorepo pays off, which toolchain to pick, and what a sensible layout looks like for a small-to-mid team — pnpm workspaces, Turborepo, Nx, and the newer options.
The Strangler Fig Pattern: Migrating a Legacy Monolith Without the Big-Bang Rewrite
A realistic playbook for replacing a legacy system in place — routing, dual-write, shared data, team slicing, and the order of operations that actually ships.
Code Review and Commit Hygiene That Actually Helps
Conventional Commits, small PRs, review culture, and the PR templates people actually fill out — how to review code so the next developer (including future-you) can still move fast.
Building a Production Monitoring and Observability Stack
Monitoring tells you something is broken. Observability tells you why. Here's the stack and methodology I use to instrument production systems — from metrics and logs to traces and alerting that doesn't wake you up at 3 AM for nothing.
CI/CD Pipeline Design: Principles for Reliable Deployments
A well-designed CI/CD pipeline is the backbone of engineering velocity. Here are the design principles I follow after building and maintaining pipelines for teams ranging from 3 to 50 developers.
Docker Compose to Kubernetes: A Practical Migration Guide
Migrating from Docker Compose to Kubernetes doesn't have to be a big-bang rewrite. Here's the incremental approach I've used across three production migrations — with real configs and hard-won lessons.
The Next.js Full-Stack Production Checklist
Launching a Next.js application to production is more than just running next build. After deploying six Next.js apps to production, here's the comprehensive checklist I wish I had from the start — covering performance, security, SEO, and operational readiness.