They don't even know the fundamentals
&gt; It turns out my day to day work doesn’t require deep knowledge about database internals and I can mostly treat them as a black box with an API 2.<p>Because of such attitude of the previous dev team my client ended up with DB integrity ruined. Previous guys somehow didn&#x27;t know they should use transactions when updating&#x2F;deleting stuff in the DB, because hey, it&#x27;s just API you call, who cares of mambo-jumbo happening behind the curtains, right?<p>I myself had a similar fuckup with MongoDB a decade ago, because I used it &quot;because it&#x27;s fast&quot;, but failed to read the small letters, and wasn&#x27;t aware that it achieves that speed by buffering the data for async save, and so has no guarantees it will actually be saved at all. So I lost a lot of data when traffic suddenly jumped, and since those were affiliate clicks lots of people got very pissed about not getting paid, and it almost ruined both my client&#x27;s business as well as my own, as it was our core client.<p>Lack of understanding of (or even caring to know about) DB internals is also why like 90% of projects I&#x27;ve seen has wrong indices, or often no even a single index set at all. Because, hey, it&#x27;s someone else&#x27;s job to think about it, but in reality budgets are limited and team don&#x27;t have a dedicated DBA or even a capable devops person to notice it, and it just ends up in the production like that.<p>So, in summary: no you don&#x27;t need to know every in-and-out of every technology out there, no one can do that, but there&#x27;s a valid requirement that one has to be familiar to those that they actually use - at least those that can seriously bite one&#x27;s ass and cost a lot of money. And all DB related stuff is very much like that, that is probably the most critical part of the whole system, so no, it&#x27;s definitely not a black box.