Practical notes from delivery work: engineering, clients, and running software.
Assume network failure. Use idempotency keys, retry with backoff, and log correlation IDs so you can trace what…
Automate tests, keep builds fast, ship small, and make rollback easy. CI/CD isn’t a luxury, it’s a seatbelt.
Automate dependency checks, patch regularly, use least-privilege access, and treat secrets like loaded weapons.
Logs, metrics, and alerts should point to action. If your alert doesn’t tell you what to do next,…
Legacy Rails can be reliable if you treat it like infrastructure: small changes, tests where it matters, safe…
Define severity, assign an incident lead, communicate clearly, and write a short postmortem. The goal is learning, not…
Rails upgrades: how to keep them predictable
Upgrade Rails in steps: audit dependencies, add test coverage where it matters, run dual pipelines, then ship. Big-bang upgrades are…
Rails support without firefighting
Keeping a Rails app healthy is boring on purpose. Patch dependencies, tighten monitoring, and ship small improvements. This is how…
