About

Chuan-Yen Chiang

I am a cloud platform engineer based in Stockholm. I build internal developer platforms on Kubernetes, AWS and Azure, with Crossplane as one API for cloud and on-prem resources. I work in Go, Python and TypeScript, and I contribute to the Crossplane project.

This site collects my slide decks and notes on platform engineering. The other tabs list the areas I have worked in and my open-source work.

Experience

Cloud platform, 2024 to present

  • Own the long-term plan for managing cloud resources with Crossplane.
  • Lead knowledge sharing on Crossplane and its practices across the organisation.
  • Improve existing solutions, for example by separating the provisioning interface from the business logic in shared Helm charts.
  • Use AI agents and workflows in daily platform work, including incident analysis.

Internal developer platform, 2022 to 2024

  • Built a platform that gives developers a ready environment: identity, Kubernetes access and single sign-on, with cloud resources on AWS and Azure managed as code.
  • Designed API-first provisioning, with resources requested through Crossplane APIs on Kubernetes.
  • Gave each team an isolated environment on shared Kubernetes infrastructure, with teams able to bring their own cloud account.
  • Added checks to pull requests that report misconfigurations, quota limits and risky changes before they are applied.

Cloud platform tooling, 2019 to 2022

  • Built internal tooling that let teams use AWS services as code, following agreed practices.
  • Monitored and reduced cloud costs.
  • Set up build, integration and deployment pipelines.

Data and backend architecture, 2016 to 2019

  • Moved a monolithic service to microservices on Kubernetes, which more than halved the number of servers for the same workload.
  • Designed an ETL data pipeline that more than halved storage and query costs.
  • Rewrote a backend service from Node.js to Go to improve performance.

Open source

My projects

  • xp-provider-gen: a Kubebuilder plugin that creates and updates the project structure and APIs of a Crossplane provider.

Contributions

  • crossplane/provider-template: the starting point for custom Crossplane providers. Moved it from cluster-scoped to namespaced resources, added typed external connectors and changelogs, and keep its dependencies and documentation current.
  • crossplane/upjet-provider-template: the starting point for providers converted from Terraform providers. Updated dependencies and enabled metrics.
  • crossplane/crossplane: in the command line tool, passing credentials to functions in render, pulling images from private registries, and reading the Podman configuration.
  • crossplane-contrib: fixed a memory leak in provider-argocd, added Container Apps and Service Bus resources to the Azure provider, and fixed vulnerabilities in provider-helm.
  • Smaller changes to configure-aws-credentials, CloudQuery and Apache Superset.

All merged pull requests on GitHub