#devops
13 articles tagged with #devops
TypeScript 7 in Monorepos: What I Learned Setting Up tsgo with Turborepo, Nx, and pnpm Workspaces
After my TypeScript 7 article, readers asked the right question: does the Go compiler actually work in a real monorepo? I tested tsgo with Turborepo, Nx, and pnpm workspaces. Here's what works, what breaks, and the symlink bug nobody talks about.
Why I Migrated from Traefik to Gateway API โ And What I'd Do Differently
After shipping Ingress NGINX โ Traefik as a stopgap, I moved to Gateway API on 47 Ingress resources across 3 clusters. Here's the honest migration guide, what broke, and the ingress2gateway 1.0 tool that saved me.
Rust + Go Hybrid Architectures: What 6 Months Taught Me About Java's Middle Ground
48.8% of companies now use Rust in production. Go still powers Kubernetes and Docker. After 6 months of running both together, I found a pattern that outperforms Java's monolith โ and avoids the trap of rewriting everything.
Traefik Middleware Patterns for Production โ What Actually Works After 6 Months
After migrating 47 Ingress resources from NGINX to Traefik, I learned which middleware patterns survive contact with production. Here are 6 that do โ with real YAML and the mistakes I made so you don't have to.
What 3 Months of GraalVM Native Image Taught Me About Rust's Real Advantage
GraalVM gives Spring Boot millisecond startup and 75% less memory. But Rust still wins โ just not where you'd expect. Here's what I learned running both in production.
Rust + PostgreSQL: Building a Backend That Actually Scales โ Without the JVM Tax
I built a production API with Rust, Axum, and PostgreSQL. Here's what the memory footprint, query performance, and deploy pipeline taught me about Spring Boot's blind spots.
Ingress NGINX Is Retiring โ Why I Switched to Traefik Before the Deadline
Ingress NGINX officially retired in March 2026. Here's my zero-downtime migration to Traefik โ with the exact Helm values, annotation mappings, and the one mistake that cost me two hours.
Why I Stopped Writing CI/CD Pipelines from Scratch โ And Started Using Proven Patterns
I wasted years reinventing CI/CD wheels โ custom bash scripts, Jenkins groovy nightmares, YAML copy-paste. Here are the 5 pipeline patterns I now reuse for every project, tested across Spring Boot, FastAPI, and React.
Why I Stopped Using Docker Compose in Production โ Kubernetes Patterns That Actually Work
I ran Docker Compose in production for years until it broke at 3 AM. Here are the 6 Kubernetes patterns I actually use โ no Helm charts, no ceremony, just what works.
Why I Stopped Writing Unit Tests for Spring Boot APIs โ And Started Using Testcontainers
I spent years mocking repositories, faking transactions, and testing things that were already tested. Then I switched to integration tests with real PostgreSQL containers and caught 3x more bugs. Here's the honest case for Testcontainers in Spring Boot.
Why I Ditched Kubernetes for Local Development
Every week someone tells me I should be running Kubernetes locally. They're wrong. Here's the honest case against k8s for local dev โ and what I use instead.
Docker Compose Patterns Every Developer Should Know
From health checks to profiles, these Docker Compose patterns will save you hours of debugging and make your dev workflow actually enjoyable.
Git Rebase vs Merge: When to Use Which (2026 Edition)
After years of flame wars and bad rebase-induced incidents, here's the pragmatic rule set I actually follow for branching strategy.