Move fast and migrate things: how we automated migrations in Postgres

<p>At&nbsp;<a href="https://benchling.com/" rel="noopener ugc nofollow" target="_blank">Benchling</a>, we&rsquo;re building a platform to help scientists do research. Hundreds of thousands of scientists across academia and enterprise clients use Benchling to store and analyze scientific data, assemble DNA sequences, and design experiments.</p> <p>Over the last three years, we&rsquo;ve built out several new&nbsp;<a href="https://benchling.com/enterprise" rel="noopener ugc nofollow" target="_blank">product modules</a>&nbsp;as we&rsquo;ve grown our user base over 10&times;, so we&rsquo;ve been constantly iterating on our product and data model. In that time, we&rsquo;ve run over 800 different migrations.&sup1; We host a separate database for many of our larger customers, so these migrations have also been run across 100s of databases.</p> <p><a href="https://benchling.engineering/move-fast-and-migrate-things-how-we-automated-migrations-in-postgres-d60aba0fc3d4"><strong>Website</strong></a></p>