9. § Platform Engineering is the practice of building useful
abstractions and self-service infrastructure within an
organization, to unify scattered tools and accelerate developer
productivity.
§ Golden Path: templated composition of well-integrated code
and capabilities for rapid project development (software
development lifecycle - SDL)
− For example:
§ A getting-started tutorial
§ Skeleton source code
§ Dependency management
§ CI/CD pipeline template
§ Cloud infrastructure-as-code template
§ Kubernetes YAML files
§ Policy guardrails
§ Logging and monitoring instrumentation
§ Reference documentation
§ Etc.
10. § Increase autonomy: dev team decides what infrastructure should be
created, based on project templates, guidance, and collaboration with the self-
service infrastructure team (Platform + DevOps team).
§ Decrease waiting times: dev team is not waiting time for the IT or
networking team to set up resources.
§ Increase productivity: increased autonomy and decreased waiting
times shall be able to reduce waste during work.
§ Leverage knowledge-sharing: by enabling teams with self-
service, the organization can share the software practices, best practices, and
standards widely for all projects (if they need).
§ Respond to shortage of infrastructure, network,
system, SRE, or DevOps engineers: IT talents are in
high demand on the market. If we can structure and organize a team of experts as
a platform team, then we can leverage and optimize the resources ad people in the
organization.
Organization level
§ Control and increase/decrease the costs of
infrastructure: e.g., TTL required for resources, be able to destroy
resources any time need.
§ Unify stacks and used technologies: through learning
paths, developer golden path, TechRadar…
§ Implement and control security throughout the
whole organization: abstract away the complex of security from
developers by integrated DevSecOps toolsets, IAM, or security network
concerns…
§ Control integrations via authentication services, SCM services,
project management tools…
Project team level
“Platform Engineering aims to mitigate the cognitive overload caused by a shared-responsibility model that's gone too far, by smoothing the day-to-day developer experience.” – Google Cloud