Adding a new column is a simple act with complex consequences. It changes the shape of your data, the queries that touch it, and the systems downstream. Done right, it makes your product stronger. Done wrong, it can break production.
Before you create a new column, define its purpose with precision. Know its data type. Choose a name that speaks plainly to anyone reading the schema. Avoid ambiguities. A column should explain itself without documentation.
Indexing matters. If the new column will filter queries or join tables, create indexes early. Test them. Measure performance under load. Skip indexes for columns that store rarely queried or large text blobs; they waste space and slow writes.
Understand defaults. Setting the wrong default can corrupt meaning and cause silent bugs. For booleans, decide the truth state explicitly. For timestamps, use UTC to avoid shifting values in time.