Adding a new column sounds trivial—until it isn’t. Schema changes hit production. Migrations block writes. Downtime costs money. The way you add a column matters.
First, define the new column with intent. Choose the right type. Keep it compatible with existing rows. If the column will hold nulls, make that explicit. If it must have a default, set it in the migration, not in ad-hoc updates.
Second, plan the database migration. In PostgreSQL, ALTER TABLE ADD COLUMN is usually fast for nullable columns without defaults. Adding a default value can lock the table, so set it in a separate UPDATE after the column exists. In MySQL, watch for table rebuilds that can stall queries.
Third, make the new column visible to your code in a controlled release. Update models, serializers, and views. Deploy behind feature flags. This avoids exposing partially populated data.