This document discusses lessons learned about getting software to production. It introduces Mike, a student of deploying software easily, and covers configuration management, the roles of developers and operations staff, and why communication between the two is important. Typical project lifecycles are discussed along with common problems that arise when developers don't consider operational needs or when operations rejects changes too often. The document promotes establishing a simple, repeatable release process and provides reading recommendations on the topic.