Adding a new column is simple in theory. In production, it can break everything if not done with care. Schema changes must protect uptime, avoid locking large tables, and keep deployments predictable. A new column should be planned, tested, and rolled out in a way that fits the database engine you use.
First, define the exact column name, type, and constraints. Avoid vague types. If the column will store timestamps, choose a precise timezone-aware format. If it will store a state, use an enum or fixed set of values. Document why it exists and which application components will write or read it.
Second, add the column in a backward-compatible way. In many relational databases, adding a nullable column without a default is fast and does not lock the table. Adding a column with a default or a NOT NULL constraint can cause a full rewrite. For high-traffic systems, deploy the new column empty, then populate it in batches.