There aren’t many agreed-upon definitions, but I’ll attempt a simple distinction:
IT covers physical provisioning and maintenance. Data center management, on-premise appliances, and technical support.
DevOps covers virtual provisioning and maintenance. Software configuration, CI/CD and release management, and SaaS integration and management (both cloud-prem and third-party integrations).
Platform engineering covers application-level provisioning and maintenance. It sits at a higher level of abstraction than DevOps. Customers don’t provision cloud resources directly but rather bundles of resources that are application-specific.
Some other distinctions that might work instead.
- DevOps build unopinionated infrastructure, but platform engineering builds opinionated infrastructure.
- Application-level provisioning often requires building an internal platform as a product. This requires a different skillset than IT (administration) and DevOps (configuration and scripting).
- IT, DevOps, and Platform Engineering serve the same internal customer (developers), but only platform engineering is truly self-serve.