I'll leave this here:
<a href="https://www.slideshare.net/iammutex/what-every-data-programmer-needs-to-know-about-disks" rel="nofollow">https://www.slideshare.net/iammutex/what-every-data-programm...</a>
<a href="https://www.safaribooksonline.com/library/view/the-data-sessions/9781449315054/oreillyvideos886685.html" rel="nofollow">https://www.safaribooksonline.com/library/view/the-data-sess...</a><p>TL;DR Disk IO is pretty much a black box in virtualized environments. All the cool stuff you can do with disks (and memory, and tmpfs) to improve performance seems worth hosting your own hardware.<p>Personally I'd just read everything Ted Dziuba wrote and rethink how much "Ops" is dying.
<a href="http://widgetsandshit.com/teddziuba/archives.html" rel="nofollow">http://widgetsandshit.com/teddziuba/archives.html</a><p>Maybe it's just being replaced by a bunch of code to fix problems caused by "cloud" hosting performance bottlenecks.
I'm not saying this is necessarily bad, but you should be aware that you're probably trading time managing and picking hardware that suits your needs for additional coding time.
I've had this argument so many times: DevOps has the common problem of, when you have a hammer, every problem looks like a nail.<p>We live in an economy of specializations, and it's optimized that way for a reason. Every time I've worked with a DevOps team they've done a piss-poor job dealing with Adult problems (aka negotiating with vendors, migrating cloud architecture, evaluating contracts and SLAs, bringing on contractors, etc) They are also generally mediocre when developing software on time and without bugs, compared with career software engineers. Why do we have this obsession with combining the two fields?