DevOps Intermediate
Platform Engineering — Internal Developer Platform¶
Platform EngineeringDeveloper ExperienceBackstageSelf-service 5 min read
Building an internal developer platform. Self-service, golden paths, developer experience and Backstage.
What is Platform Engineering¶
Platform engineering builds an internal platform that abstracts infrastructure and enables developer self-service. Goal: reduce cognitive load and increase productivity.
- Self-service — developers create DBs, deployments, monitoring themselves
- Golden Paths — recommended, tested paths
- Guardrails — automated enforcement of best practices
Backstage — Developer Portal¶
# catalog-info.yaml (service registration)
apiVersion: backstage.io/v1alpha1
kind: Component
metadata:
name: order-service
description: Order processing
annotations:
github.com/project-slug: org/order-service
backstage.io/techdocs-ref: dir:.
spec:
type: service
lifecycle: production
owner: team-orders
system: e-commerce
dependsOn:
- resource:default/orders-db
- component:default/payment-service
Software Templates¶
# Backstage Template for a new microservice
apiVersion: scaffolder.backstage.io/v1beta3
kind: Template
metadata:
name: microservice-template
title: Node.js Microservice
spec:
type: service
parameters:
- title: Service Info
properties:
name:
title: Name
type: string
owner:
title: Owner
type: string
ui:field: OwnerPicker
steps:
- id: fetch
action: fetch:template
input:
url: ./skeleton
values:
name: ${{ parameters.name }}
- id: publish
action: publish:github
input:
repoUrl: github.com?owner=org&repo=${{ parameters.name }}
- id: register
action: catalog:register
Summary¶
Platform engineering is the evolution of DevOps. Self-service, golden paths and Backstage transform infrastructure from a bottleneck into a productivity tool.
Need Help with Implementation?¶
Our team has experience designing and implementing modern architectures. We’re happy to help.