Skip to content
RED SAGSkills
mediumDevOps Engineer interview question

When would you package Kubernetes manifests with Helm and when with Kustomize? Can they be combined?

What the interviewer wants to hear

  • Helm uses templates, values and versioned charts with release history
  • Kustomize uses plain YAML with bases and overlays and patches
  • Helm suits distributing reusable apps to many consumers
  • Kustomize suits per-environment changes to your own manifests
  • They can be combined, for example Kustomize over rendered Helm output, and both work with Argo CD

Model answer

Helm is a package manager: a chart has Go templates and a values file, it is versioned and published to a repository, and Helm tracks release history for upgrades and rollbacks. It is the right fit when you distribute an application to many consumers who need many knobs, like most third-party software. Kustomize works on plain YAML: you have a base and per-environment overlays that patch it, with no templating language. That makes it very readable for your own services where environments differ only in a few fields such as replicas, image tags or resources. Heavy Helm templating can become hard to read, while Kustomize becomes awkward when you need real logic. They combine well: Kustomize can inflate a Helm chart and then apply patches, and Argo CD supports both. In practice I often install vendor tools with Helm and manage in-house services with Kustomize overlays in a GitOps repo.

Can you answer it under time pressure?

Take a timed medium round and get scored on every answer.

Start mock interview

More medium DevOps Engineer questions