Skip to content

technical-debt

9 posts

technical-debt
Slow Down to Speed Up

Rushing feels fast but creates rework, bugs, and firefighting. Why pausing for refactoring, tests, and CI upkeep is an investment in speed, not lost speed.

technical-debt · testing · ci-cd +2

Who Owns This Code Now: Accountability vs Blame

Stop asking who wrote the legacy code. Separate responsibility, accountability, and blame, and make inherited code owned rather than orphaned.

engineering-culture · leadership · team-management +3

API Versioning Strategies in Practice: From First Release to Sunset

A practical guide to API versioning: URL vs header approaches, breaking changes, Sunset-header deprecation, AWS API Gateway, GraphQL, and contract testing.

api-design · deployment · graphql +4

Migrating from Microservices Back to a Modular Monolith

Recognizing distributed monoliths, strategic service consolidation, and the honest reality of moving back to a modular monolith when complexity grows.

microservices · architecture · distributed-systems +2

From RFC to Production: What They Don't Tell You About Implementation

Where RFC designs diverge from production reality, using notification systems as the worked example, and how to tell useful adaptation from architectural drift.

rfc · production · debugging +4

AWS CDK URL Shortener Part 5: Scaling & Long-term Maintenance1/1

Multi-region deployment, database scaling, disaster recovery, and long-term maintenance patterns for production systems at scale.

aws-cdk · reliability · scalability +1

Frontend Build Tools History: From jQuery and Grunt to Bower1/1

Before webpack, we concatenated files with Grunt and wrestled with jQuery spaghetti. How frontend tooling grew from manual file management to real build systems.

javascript · build-tools · technical-debt +2

Google Closure Compiler: Legacy, Lessons, and Modern Alternatives

How Google's 2009 Closure Compiler shaped modern web tooling, from dead code elimination to type checking, and its lasting mark on today's build tools.

javascript · build-tools · best-practices +6

Replacing Factories and DI in Node.js with Pure Functions

Factories, service layers, and DI containers rarely earn their keep in a Lambda-shaped Node.js service. What replaces them, and where classes still win.

event-driven · functional-programming · lambda +3