Engineering
Accessibility is a release gate, not a retro
If it can fail a keyboard or a screen reader in the main journey, it is not ready — even if the visual design is finished.
Rahim Chowdhury · 2 November 2025 · 5 min
Teams still schedule “a11y polish” after feature complete. That is how you get a beautiful flow that a keyboard user cannot submit, and a public service that fails a procurement check two weeks before launch.
We treat the primary journey as a gate: focus order, names, contrast, error text, and a pass with a screen reader. If it fails, the slice is not done. Visual polish does not override that.
This is cheaper than the alternative
Fixing structure after the component model has calcified costs more than doing it in the first pull request. CivicGrid’s permitting flow was slower in week two because of this gate. It was faster in month four because we did not rebuild the forms.