When data changes, you need to move fast. Adding a new column is one of the most common schema updates, but it is also one of the easiest places to break production if you get it wrong.
The pattern is simple: define the column, choose the right type, set defaults, run migrations, and verify. But each step has limits you must respect.
Start with type selection. Avoid guessing. An integer now may need to be a bigint later. A text field grows; consider constraints and indexing from day one.
Defaults matter. Adding a non-nullable column to a large table can lock writes. If the database fills millions of rows with a default value, it might block queries for minutes or hours. Break the change into steps: