Adding a new column to a database sounds simple. It is not. A careless change can lock tables, block writes, or slow queries for hours. In production, that is risk you cannot take.
The starting point is to define the column and its purpose. Avoid vague names. Keep types explicit. Decide whether the column should be nullable or have a default. In PostgreSQL or MySQL, adding a nullable column without a default is usually fast. Adding a column with a default can rewrite the table on disk.
Plan for deployment. For large datasets, use online schema change tools like pt-online-schema-change or native features such as PostgreSQL’s ALTER TABLE ... ADD COLUMN with careful sequencing. Add the column as nullable first. Populate it in small batches. Then set constraints or defaults after the backfill is complete.
Watch indexing. Do not add an index until the column holds enough data to justify it. Each index carries storage and write costs. Measure before and after.