logo

Building a Platform Engineering Fabric with the Kube API at Autodesk

2023-04-19

Authors:   Jesse Sanford, Greg Haynes


Summary

The conference presentation discusses the evolution of a developer platform and the challenges faced in integrating various tools and interfaces. The presentation also highlights the need to rethink the product and focus on providing interfaces for users to describe their deployment needs.
  • The developer platform started with simple app delivery using GitHub and Jenkins for source control and CI/CD respectively.
  • As the platform grew, Spinnaker was adopted for CD processes and the suite of in-house tools and libraries were developed for infrastructure management and networking.
  • The integration of various tools and interfaces resulted in a high number of user interaction points and integration costs.
  • There is a need to consolidate interfaces and rethink the product to focus on providing interfaces for users to describe their deployment needs.
  • The example of regionalization of services highlights the need for the platform to own the deployment process rather than users triggering their own deployments.
The presentation highlights the pain point of users having to interact with multiple interfaces and tools to perform common workflows. This complexity and integration cost was pushed onto the users, resulting in dissatisfaction. The need to rethink the product and focus on providing interfaces for users to describe their deployment needs is illustrated by the example of regionalization of services. If users are responsible for triggering deployments, a new region rollout or modification to regions would result in a fire drill for every engineering team. This highlights the need for the platform to own the deployment process and provide interfaces for users to describe their deployment needs.

Abstract

Autodesk is on a mission to become a platform company. To enable that future, a common deployment platform was built to accelerate the delivery of our cloud products. However, what started as the choreography of common deployment patterns has inevitably grown into a monolith of edge cases. Fortunately, the operator pattern and the extensibility of the Kube API has provided us with the fabric needed to retool. In this talk, Jesse and Greg will show that by providing a framework for declarative API design, we can unlock our platform engineer’s potential. That we can enable our globally distributed teams to build loosely coupled capability primitives on independent release schedules and product roadmaps. They will detail Autodesk's work with Crossplane and KubeVela and how they enable platform teams to build value without reinventing the wheel. Additionally, they will show how the prescription offered by these tools enables the clients of the platform to contribute back through inner source safely, abiding the “rules of the road”. Finally, they will demo how compliance is empowered through admission control and the strong separation of concerns built on Crossplane’s compositions and XRDs in conjunction with K8s RBAC to enforce sane defaults and security non-negotiables.

Materials: