We are entering an era in software engineering where we rely on libraries and frameworks to do most of our work while this useful and save tremendous dev hours, it creates leaky abstractions that manifest in form of performance degradation, unexpected errors, 100% CPU, Network and disk usage, hangs, latency and many other. It becomes difficult to articulate what goes wrong on the backend and how to fix it when engineers don’t understand the basic building block of what they are interacting with.