A new column sounds simple. Add it to the database. Push the code. Ship it. In practice, it can wreck uptime and blow your error budget if you do it carelessly.
When you add a new column, you are changing the contract between your application and its data. For a small table, the ALTER TABLE runs fast. On a table with tens of millions of rows, it can lock writes for seconds or minutes. Those seconds can stall API responses, trigger retries, and cascade into failures.
Plan each new column with precision. Decide on the data type before running the migration. A wrong type can force costly casts later. Set clear defaults. Avoid NULLs unless the value is truly optional. Always check index requirements—adding an index with the column creation can double the time your schema change takes. In many relational databases, adding an index after adding the column is safer.