Your Database Table is an awful API

A shared database table can feel like the ultimate shortcut: no API design, no contracts - just a schema. The catch is that this convenience quietly turns into friction: it blurs boundaries, slows change, and makes independent evolution harder than it needs to be. This article looks at why tables (and data-model-shaped “generated APIs”) are such a tempting trap - and what better integration boundaries look like.

Don’t Forget the People

On paper, the architecture vision is perfect. It addresses all pressing deficiencies of the existing system, aligns seamlessly with the business domain, and enables teams to retain more work within their boundaries. Finally, we will enjoy higher speed-to-market and a significant reduction in (non-value-adding, tedious) coordination efforts between teams. Surely, everyone will immediately see how much better our new architectural vision is. Not quite.