What are Django migrations?
PICTURE THIS: DATABASE INDEX
Without indexScan every row
With indexJump to keys
CostWrites slower
Simple meaning
Migrations are versioned Python files that describe schema changes.
WHY — ORM instead of guessing?
Why interviewers care about ORM:
ORM questions separate people
who only read docs from people who shipped.
Keep it short, concrete,
and tied to Python work.
Stay structured
Name the idea, why it exists, then one short example.
Close cleanly
End with when you use it and one common pitfall.
STEPS — What happens step by step?
Before you speak the answer, walk the interviewer through these steps:
- 1Migrations are versioned Python
files that describe schema changes.
- 2makemigrations generates them from
model diffs
- 3migrate applies them to
the database.
- 4They keep development, staging,
and production schemas in sync.
- 5Common mistake
What juniors usually get wrong.
- 6Close
When you pick this over the alternative.
EXAMPLE — See it in action
Here's a short line you can speak, broken into clear beats:
Say this line
“makemigrations generates them from model diffs”
Break into beats
makemigrationsgeneratesthemfrommodeldiffs
Speaking order
2987408337471632900
Note: Adapt this scaffold to your own project — keep it under 60–90 seconds.
Key takeaway
Migrations are versioned Python files that describe schema changes. makemigrations generates them from model diffs