An Internal Developer Platform (IDP) is a collection of tech and tools that a platform engineering team binds together to pave golden paths for developers, lowering cognitive load across the organization and enabling developer self-service. A well-designed IDP follows a Platform as a Product approach, where a platform team builds, maintains, and continuously improves the IDP, following product management principles and best practices. An IDP is not an end-to-end DevOps platform or a tool that covers single parts of the software delivery lifecycle or infrastructure provisioning; it's built out of different tools and technologies and might include developer portals but doesn't come as an out-of-the-box solution. An IDP covers foundations such as infrastructure orchestration, application configuration, deployment management, environment management, and RBAC. When well-designed and built, an IDP is a compelling product that lets platform teams "make the right thing [to do] the intuitive thing," increasing developer productivity and velocity.