Adding a new column should not be an ordeal. In modern systems, schema changes must move as fast as your product. A delay here blocks features, clogs pipelines, and slows deploys. You want consistency, speed, and zero downtime.
A new column in a relational database is more than a DDL statement. You have to think about locking, migrations, indexes, defaults, nullability, replication lag, and data backfills. On high-traffic production systems, a reckless ALTER TABLE ADD COLUMN can lock rows for minutes or hours. That is time your application cannot afford.
The safest path is planned. First, create the new column as nullable with no default. This reduces lock time. Then deploy code that writes to both old and new columns. Backfill data in controlled batches. After the backfill is complete and verified, switch reads to the new column. Finally, drop the old column if it is no longer needed. This pattern avoids heavy locks and keeps service available.