From Bash Scripts to Kubeflow and GitOps: Our Journey to Operationalizing ML at Scale