Full-stack Developer interview question
How do you release a full-stack feature safely?
Release a full-stack change with backward-compatible API and database steps, automated checks, feature flags or progressive rollout, health and business monitoring, and a tested rollback that does not depend on reverting irreversible data changes.
Direct answer
What a strong answer covers
How it works
A safe release separates deployment from exposure. The database change ships first in a backward-compatible form, the backend ships supporting both old and new clients, and the frontend ships behind a feature flag so the new behaviour can be enabled for a percentage of users and switched off in seconds without a deploy. Automated checks gate each step, health and business metrics are watched during rollout, and the rollback plan is rehearsed: code rolls back through the previous artefact, while data changes are designed to never need rolling back.
Example
A new checkout flow shipped as: migration adding nullable columns, API deploy that reads both shapes, frontend deploy with the flow behind a flag at 0 percent, then 5, 25, and 100 percent over two days while watching conversion and error rates per cohort. When the 25 percent stage showed a drop in conversion on Safari, the flag went back to 5 percent within a minute and the fix shipped the next day.
Common mistakes
- Coupling a destructive migration to the deploy so rollback is impossible.
- Releasing to 100 percent at once and discovering the problem from support tickets.
- Leaving stale feature flags in the codebase for years.
A useful answer structure
Answer from your own work.
Do not memorise a script: use only examples you can explain honestly in follow-up questions.
Open the desktop workspace and rehearse a clear answer in your own words.