This page is still in draft state. Please note that the content may be subject to change.
As developer platforms grow in complexity, governance through documentation and manual review no longer scales. Policy as Code promises automated, machine-checkable enforcement of rules — but does it actually improve coding excellence, or does it mainly create friction? This topic investigates the trade-offs.
As software delivery increasingly depends on standardized platforms, CI/CD pipelines, cloud infrastructure, and internal developer platforms, governance can no longer be handled only through documentation, conventions, or manual review. Instead, teams increasingly encode rules and constraints directly into machine-checkable policies. This approach is commonly described as Policy as Code.
Policy as Code promises a compelling trade-off: stronger consistency, compliance, and security without relying entirely on manual enforcement. At the same time, it may introduce its own costs in the form of added complexity, false positives, reduced flexibility, and friction for developers. In current platform engineering discourse, Policy as Code is increasingly treated as a foundational capability for scalable platform governance. CNCF describes it as an important building block for platform engineering, while tools such as Open Policy Agent provide a general-purpose framework for expressing and evaluating policies across services, APIs, CI/CD pipelines, Kubernetes, and infrastructure definitions. (CNCF: Introduction to Policy as Code)
This topic explores whether Policy as Code actually improves coding excellence in practice, or whether it mainly adds overhead and rigidity.
You research how Policy as Code is used in modern developer platforms and whether it genuinely improves software quality — or mainly gets in the way. Based on your research, you design and run a small coding experiment that lets you observe the effects of Policy as Code first-hand.
A proof of concept could look like this, for example: You set up a small but realistic development workflow — say, a containerized microservice deployed via a CI/CD pipeline to a Kubernetes cluster or a cloud environment. You then define a set of machine-checkable policies using a tool like Open Policy Agent (OPA), Kyverno, or Checkov — for instance, policies that enforce security baselines (no containers running as root), naming conventions, resource limits, or dependency constraints. You run the workflow twice: once without any policy enforcement, and once with policies active. You then compare the outcomes along dimensions like …
The goal is not to prove that Policy as Code is universally good or bad, but to identify under which conditions it helps — and when it becomes overhead that teams will eventually work around.