In shortPlan the rollback before the deploy / Keep migrations reversible / Practice it / Communicate.
1. Plan the rollback before the deploy
If you do not know how to go back, you are not ready to go forward.
2. Keep migrations reversible
Schema changes should be backward-compatible for at least one release. Never drop a column on the same day you stop using it.
3. Practice it
Run a rollback in staging every month. The first time should not be during an incident.
4. Communicate
Tell support and the on-call hen when you roll back. Silence is the enemy of trust.
Written by Reginald Crowe, Chief Technology Rooster. Disagree? Tell us. We read every message, usually before the second coffee.