All applications, regardless of their architecture, must embrace the idea that failure is an option. We can count on hardware and networks to fail, so we must code for these failures. However, most failures are not terminal. Given sufficient time, many failures are recoverable. In this article, we introduce the Retry pattern as an approach to gracefully recover from failure.