The ability to deliver new and improved services, including producing high-quality code, to customers is a clear competitive advantage in many verticals. Automation is key to doing this reliably and fast.
To meet these demands and requirements, DevOps (or Platform) teams find themselves building in-house platforms to support the deployment, operationalization and lifecycle management of microservices-based applications. These platforms leverage Kubernetes and integrate a myriad of open source tools to deliver frameworks that their internal teams can consume on demand. This is a complicated undertaking, which is made worse by the on-going and increasing number of requirements that QA, customer service, pre-sales, legal, and other teams place on DevOps. Because a number of parameters (e.g. number of supported cloud environments) may continue to change, these internal projects tend to result in high levels of cross-team frustration and pain.