Code review best practices that help the author ship the same day: review for risk, not taste, bucket comments, and stop blocking on nits.
Feature Flags Best Practices Without the Maze
Feature flags best practices: separate deploy from release, name flags so you can grep them, log the variant, and delete them before they haunt production.
Environment Variables, Secrets, and the Config Mess
The app works on your machine. CI fails because API_URL is missing. Staging points at production Stripe because .env was copied. A secret is in the repo from 2021 and nobody rotated it. Config looks like a beginner topic. It is a common outage class. This is how to treat environment variables and secrets like […]
How to Ask for Help Like an Engineer
You have been stuck for three hours. You ping “it doesn’t work.” A senior spends twenty minutes reconstructing your setup, then asks for the error, then asks what you tried. They are not cruel. You did not pack the question. Asking for help is a skill. It is not an admission that you failed. It […]
How to Onboard Onto a Repo Nobody Documented
The README is “coming soon.” The wiki is a 2019 screenshot. Slack history is in a workspace you are not in. You are expected to ship a small ticket this week. This is normal. It is also learnable. Onboarding onto an undocumented repo is a research project with a deadline. You do not need to […]
Caching: The Bugs You Introduce on Purpose
Caching is how you make a slow thing fast. It is also how you serve yesterday’s price, yesterday’s permission, and a logged-out header on a logged-in page. Every cache is a bet that the old answer is still good. When the bet is wrong, the bug looks supernatural: “I updated it but the API says […]
How to Estimate Work Without Lying to Your Team
Someone asks “how long?” You say two days because two days sounds responsible. The work has an unknown vendor, a migration, and a designer who is on leave. Four days later you are still on the vendor. Trust drops. Next time you pad until the number is meaningless. That is also a lie, just a […]
CSS Layout Without Fighting the Box Model All Week
You add width: 100% and the page grows a scrollbar. You set height: 100% and nothing happens. You center a div with four different tricks and it is still 3 pixels off. You conclude CSS is broken. CSS is consistent. Your mental model is from 2009 plus a Stack Overflow answer that used floats. Layout […]
How to Leave a Messy Codebase Better Than You Found It
You will not get a greenfield. You will get a repo that grew for six years, with a folder named new-new-api, a helper called utils2, and a comment that says DO NOT TOUCH above the billing module. The professional move is not a rewrite. It is to leave each change a little clearer than you […]
Tests Worth Writing and Tests You Should Skip
A test suite that takes twelve minutes and fails because a button’s CSS class changed is not a safety net. It is a tax. Teams respond by skipping CI or by deleting tests. Then the payment bug ships. Good tests are cheap to run, fail on behavior you care about, and do not duplicate the […]
- 1
- 2
- 3
- Newer Posts