Being agile, with its attention on extensive testing, frequent integration, and focusing on important product features, has proven invaluable to many software teams. When building complex systems it can be all too easy to primarily focus on features and overlook software qualities, specifically those related to software architecture. Time has shown that agile practices are not sufficient to prevent or eliminate technical debt, which can ultimately affect reliability. Many issues arise when there isn’t good validation through tests and constant attention to the architecture and code quality. It is important to recognize what is core to the architecture and the problem at hand while evolving it. If there is not enough attention on the architecture and the code, technical debt will creep in to the point where it can become muddy, making it hard to deliver new features quickly and reliably. Two principles that can help teams deliver more quickly and with confidence is to focus on code quality and delivery size. Small frequent delivery with constant attention to a good codebase is crucial to being able to sustain faster reliable delivery. Practices that can help keep the code clean or prevent it from getting muddier include: Testing, Divide & Conquer, Gentrification, Quarantine, Refactoring, and Craftsmanship. This talk examines various practices and techniques such as Continuous Integration, Continuous Delivery, Continuous Inspection, along with techniques to pay good attention to software quality, all of which enable teams to deliver fast and with confidence.