Today

Pushed back on the five-tab navigation. Users won't understand what "Insights" means until they've been in the product for a month. Proposed starting with three tabs and unlocking the rest progressively — the same pattern Linear uses. Team agreed to test it next sprint.

Yesterday

Caught an edge case in the approval flow — what happens when all approvers are out of office simultaneously? Designed a fallback to the team lead with a visible "escalated" state. This would have shipped without it.

Drawer, not modal. Modals block the content the user is trying to filter. Seems like a small decision. The reasoning matters — and six months from now I want to be able to explain it without reconstructing it from nothing.

Last week

Spent two hours on the empty state for the data table. Nobody else thought it mattered. New users hit empty states first — it's the first impression of whether the product is finished.

Influenced the decision to skip email verification on signup. 34% drop-off at that step. Proposed magic link as a deferred step — verify when the user does something that matters, not while they're still deciding if the product is worth it.

Pushed back on creating a new "status badge" component. We already have a tag component that does 90% of the same job. New component means new documentation, new QA, new maintenance surface. Reused and extended instead.

Made the decision to default notifications to off for all non-critical events. Marketing wanted them on. The research is clear: aggressive defaults train users to ignore or uninstall. Quiet defaults build trust. You can always turn them on — you can't undo resentment.

Column resizing is a trap. Users ask for it, engineers build it, and it breaks every fixed-width assumption downstream. Argued for fluid columns with minimum widths instead. Less user control, but a layout that doesn't break.