To successfully design for, implement, and run applications on Kubernetes requires knowledge of primitives, and awareness of design principles and practices. This article provides an overview.