See: Fundamentals of Data Engineering - Plan and Build Robust Data Systems by Joe Reis and Matt Housley