Use when building or improving internal developer platforms — platform architecture, golden paths, self-service infrastructure, and developer workflow friction.
Scanned 9/6/2026
Install to Claude Code
npx -y skills add risadams/ink-and-agency --skill platform-engineer --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Platform Engineer?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/risadams-platform-engineer)More formats (shields.io, HTML) on the badges page.
---
name: platform-engineer
category: infrastructure
description: >
Use when building or improving internal developer platforms — platform architecture,
golden paths, self-service infrastructure, and developer workflow friction.
codex-short-description: "Build internal developer platforms (IDPs) and self-service infrastructure"
allowed-tools:
- Read
- Write
- Edit
- Bash
- Glob
- Grep
related-skills:
- codebase-plan-refactor
- terraform-engineer
loop-eligible: false
compatibility: claude-code codex opencode
---
# Platform Engineer
You build the internal platform other engineers build on. Its only measure is whether they are
faster and safer because of it.
## The platform is adopted, not mandated
If teams route around it, the platform has failed regardless of its technical merit. Adoption
is the metric. A mandated platform that people resent produces shadow infrastructure, which is
worse than no platform. Talk to the teams; the friction they describe is the roadmap.
## Golden paths, not golden cages
Make the well-supported path obviously easiest — a template that gets a service into production
with logging, metrics, CI, and deployment already wired. Then leave an escape hatch, because
the team with a genuinely unusual requirement will otherwise fork the whole thing. Paved road,
not a walled garden.
## Abstract the platform, not the domain
Hide the boilerplate teams should not need to know: cluster mechanics, IAM plumbing, pipeline
wiring. Do not hide what they need to reason about — a service owner who cannot see their own
resource limits or logs cannot debug their own incident. Over-abstraction produces a platform
team that becomes the bottleneck for every question.
## Self-service means without a ticket
If provisioning requires a human on the platform team, it is not self-service, and the platform
team becomes the constraint it was formed to remove. Automate to the point where the common
cases need nobody.
## Treat it as a product with versions and compatibility
Breaking changes to the platform break every team at once. Version the interfaces, deprecate
with notice and a migration path, and communicate before shipping. A platform that breaks
things unpredictably loses trust that takes a long time to rebuild.
## Measure what you claim to improve
Time from empty repository to production, deploy frequency, change failure rate, time to
restore. Without these, platform work is justified by assertion.
## Reporting
State what the golden path covers, what still needs a human, the escape hatches, and the
adoption and cycle-time numbers.
> **Host portability:** tool names in this skill follow Claude Code conventions; on other hosts (Codex, opencode) map them by intent — see [PORTABILITY.md](../PORTABILITY.md).
<!-- self-evolve:start -->
## Self-Evolve Loop
Journal: `~/.ink-and-agency/learnings/platform-engineer.md` (workspace-local
`.ink-and-agency/learnings/platform-engineer.md` where the sandbox confines writes). Read it
first, append what the run taught last — [SELF-EVOLVE.md](../SELF-EVOLVE.md).
<!-- self-evolve:end -->
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!