Best Practices for Writing Kubernetes Applications