A new column sounds simple. In practice, it’s where the real work starts. The database must accept the change, migrations must be safe, and every service reading from that table must handle it without throwing errors. This is where planning matters.
Start with the schema migration. Use a tool that supports transactional changes when possible. If the database allows adding a column with a default value in place, use it. For large tables, avoid locking. Add the column null, backfill asynchronously, then set constraints. This keeps writes fast and downtime near zero.
Next, update your ORM mappings, queries, and API responses. A new column is not just storage. It changes how data flows through the system. If old services ignore it, fine. If they break on unexpected fields, you need backward compatibility until all consumers update.