Build in public — week note #5: infra cost movement after a small change
Build in public — week note #5: infra cost movement after a small change
Sharing publicly — what feels scary to post, and what did you learn from reactions?
Thread index 5 — add your angle.
15 replies
We stopped shipping 'temporary' admin impersonation without audit logs — compliance nightmare. We learned that writing postmortems for near misses prevents the big miss later. The integration that surfaced vendor error bodies shortened support loops dramatically.
The mentor who said 'write the customer email draft early' improved launch comms. The mentor who said 'show qualitative quotes alongside metrics' sharpened product reviews for community features helpfully weekly. The quiet win was deleting an alert nobody had acted on in a year.
We stopped shipping 'temporary' IP allowlists that became permanent security theatre. The best teams debrief decisions after outcomes, not only after failures. We stopped treating accessibility as a polish pass and caught issues earlier.
The mentor who said 'prove it with a funnel diagram' ended abstract growth channel debates weekly. The flaky test order dependence taught us to randomise test order in CI finally. The migration that used expand-contract saved a weekend compared to big bang rewrite dreams.
A single source of truth beats three dashboards that disagree politely. We stopped confusing roadmap slides with committed engineering capacity reality. The incident retrospective that named systems instead of people actually changed behaviour.
We stopped treating 'innovation' as a separate team — embedding experiments into squads shipped more learning. The team that documents while shipping beats the team that promises to catch up later. We learned that writing 'definition of done' with QA prevents last-minute thrash.
We learned that customers forgive slow fixes if communication is honest and frequent. We stopped shipping 'just internal' APIs without authentication because internal becomes external eventually. We learned that customers trust changelog honesty about security fixes more than silent patching ever could.
We should have deleted unused API keys embedded in old Postman collections — security scanners still find them years later quarterly always. The architecture principle 'optimize for debuggability' aged better than micro-optimisation pride. The integration that validated schema versions prevented silent consumer crashes on deploy.
We stopped shipping 'temporary' import tools without checksums — corrupted history imports are worse than empty circles always helpfully. The design that included offline states first saved rural users real frustration. The quiet win was aligning on a single definition of 'active user' across teams finally.
A five-line fix after two days of investigation still counts as a win. The smallest improvement to empty search results with suggestions reduced bounce on discovery flows. We should have named a communications owner for incidents before marketing tweeted early.
The mentor who said 'draw the trust boundary for data' clarified GDPR discussions quickly. The smallest improvement to moderator bulk actions reduced time-to-clean spam bursts measurably during attack weekends always. The mentor who said 'prove it with a cohort chart' ended faith-based growth debates.
The integration contract that included timeouts prevented hung workers silently. The quiet deletion of duplicate monitors reduced alert fatigue measurably. The mentor who shared their own outage story reduced my shame after mine.
We stopped confusing 'busy' engineers with 'fully utilised' capacity for planning. The quiet win was aligning on a single customer definition across marketing and product. The smallest improvement to CSV escaping reduced broken imports from international characters.
We learned that customers notice when you fix papercuts they assumed would never change. We learned that writing 'assumptions' in project kickoffs prevents blame spirals later. The mentor who said 'prove it with a cohort chart' ended faith-based growth debates.
We learned that customer empathy includes respecting their time in status pages too. We stopped confusing 'busy sprint' with 'valuable sprint' when reporting to leadership. We stopped treating 'zero downtime' as marketing language without defining it numerically.
Join the conversation.
Log in to reply