Interview CI/CD & GitOps

How do you handle rollback when a release includes a non-reversible DB migration?

CI/CD & GitOps · Advanced level

Answer

If a release includes a non-reversible database migration, rollback cannot simply redeploy the old app. I avoid that with expand-contract design. If unavoidable, I use backups, forward-fix plans, compatibility windows, manual approval, feature flags, and a clear incident playbook.

Technical explanation

Safe release design assumes rollback may be needed and separates code deployment, data changes, and user exposure.

Compatibility windows and observability are mandatory when application and database versions overlap.

A secure pipeline protects source, build environment, dependencies, artifacts, deployment credentials, and runtime promotion gates as one chain.

Immutable artifacts, SBOMs, signatures, provenance, vulnerability gates, and environment promotion reduce ambiguity about what was built and deployed.

CI runners are high-value targets; isolate untrusted jobs, patch runner images, remove persistent credentials, and prefer ephemeral execution where possible.

Release safety depends on both automation and observability: use canaries, feature flags, rollback plans, and automated metric-based decisions.

Hands-on example

1. Design an advanced delivery exercise for: How do you handle rollback when a release includes a non-reversible DB migration using one service, one Git repository, one artifact registry, and one Kubernetes environment.

2. Implement an expand-contract migration: add nullable column/table first, deploy app compatible with old and new schema, backfill safely, then remove old schema in a later release.

3. Run the migration in a staging clone, measure duration and locks, add a pre-deploy backup checkpoint, and define a forward-fix plan for non-reversible steps.

4. Use progressive exposure where relevant: feature flag off by default, canary 5%, automated metric check for error rate and latency, then expand or rollback.

5. Record audit evidence: PR, approver, pipeline run, artifact digest, SBOM location, signature verification result, deployment event, and rollback or forward-fix decision.

Preparing for an interview?

Check how well your resume matches the role with our free resume checker— match score, ATS check, and the skills you're missing.

More CI/CD & GitOps interview questions

← All CI/CD & GitOps questions