Building Systems That Don't Break: A Practical Guide to Fault Tolerance