{"version":"0.2.0","built_at":"2026-10-10T20:58:14.188Z","license":"CC BY 4.0 © Mike Reams","canonical":"https://catalog.mikereams.com","capability":{"id":"BC-1210","name":"Platform Engineering","level":1,"parent_id":null,"l1_id":"BC-1210","industry":"software","macro_id":null,"path":["Platform Engineering"],"description":"Give product teams a paved road to build and run their services on — compute, data stores, messaging, build pipelines and the guardrails around them — so each team ships features instead of rebuilding plumbing. This is the platform under the company's own product, not the corporate IT estate.","aliases":["Internal Developer Platform","Engineering Platform","Core Platform","Paved Road"],"in_scope":["The shared runtime, data and messaging services product teams deploy onto","Golden paths, templates and self-service provisioning for new services","Cost, capacity and multi-region design of the product's cloud footprint","Platform standards that every product service must meet to be admitted"],"out_of_scope":["Corporate infrastructure, networks and employee-facing systems (see BC-730)","The product features themselves and their delivery (see BC-720 for the enterprise view, BC-530 for product development)","Security policy and threat detection for the company as a whole (see BC-760)"],"csdm_note":"Lands as a Business Capability realized by a small number of internal Application Services that product Application Services depend on; the dependency edges are the point, so model them.","status":"active","successor_id":null,"child_ids":["BC-1210.10","BC-1210.20","BC-1210.30","BC-1210.40","BC-1210.50"]},"crosswalk":{"realized_by":[{"product_id":"PR-170","product":"GitHub","pc_id":"PC-170.10","pc":"Repositories","maturity":"core","via":"BC-1210.30.10"},{"product_id":"PR-170","product":"GitHub","pc_id":"PC-170.30","pc":"GitHub Actions","maturity":"core","via":"BC-1210.30.20"},{"product_id":"PR-170","product":"GitHub","pc_id":"PC-170.40","pc":"GitHub Packages","maturity":"strong","via":"BC-1210.30.30"},{"product_id":"PR-170","product":"GitHub","pc_id":"PC-170.80","pc":"Codespaces","maturity":"partial","via":"BC-1210.40.10"},{"product_id":"PR-180","product":"Snowflake","pc_id":"PC-180.10","pc":"Data Warehouse","maturity":"core","via":"BC-1210.20.10"},{"product_id":"PR-180","product":"Snowflake","pc_id":"PC-180.70","pc":"Cost and Resource Management","maturity":"partial","via":"BC-1210.50"}],"used_in":[{"vs_id":"VS-100","vs":"Commit-to-Production","stage_id":"VS-100.10","stage":"Commit & Build","order":1,"via":"BC-1210.30"},{"vs_id":"VS-100","vs":"Commit-to-Production","stage_id":"VS-100.50","stage":"Operate & Observe","order":5,"via":"BC-1210.50"}],"patterns":[{"id":"DP-060","name":"Queue-Based Load Leveling","category":"Scalability","via":"BC-1210.20.20"},{"id":"DP-070","name":"Cache-Aside","category":"Scalability","via":"BC-1210.20.10"},{"id":"DP-080","name":"Sharding","category":"Scalability","via":"BC-1210.20.10"},{"id":"DP-090","name":"Read Replicas","category":"Scalability","via":"BC-1210.20.10"},{"id":"DP-100","name":"Competing Consumers","category":"Scalability","via":"BC-1210.10.20"},{"id":"DP-130","name":"Publish-Subscribe","category":"Integration","via":"BC-1210.20.20"},{"id":"DP-400","name":"Immutable Infrastructure","category":"Cloud","via":"BC-1210.30.30"},{"id":"DP-420","name":"Sidecar","category":"Cloud","via":"BC-1210.10"},{"id":"DP-440","name":"Twelve-Factor App","category":"Cloud","via":"BC-1210.10"},{"id":"DP-480","name":"Stream-Aligned Teams","category":"Organization","via":"BC-1210.40"},{"id":"DP-490","name":"Inner Source","category":"Organization","via":"BC-1210.30.10"}],"stacks":[{"id":"TS-010","name":"Server-rendered React on serverless","layer":"Web application","via":null},{"id":"TS-020","name":"Event-driven microservices on Kubernetes","layer":"Event streaming","via":"BC-1210.10"},{"id":"TS-090","name":"Serverless API on AWS","layer":"API & integration","via":"BC-1210.10.40"},{"id":"TS-110","name":"Static site at the edge","layer":"Web application","via":"BC-1210.10.40"},{"id":"TS-120","name":"Platform infrastructure baseline","layer":"Infrastructure","via":"BC-1210.10"}],"books":[{"id":"BK-designing-data-intensive-applications","title":"Designing Data-Intensive Applications","topic":"Distributed systems","via":"BC-1210.20"},{"id":"BK-enterprise-integration-patterns","title":"Enterprise Integration Patterns","topic":"Distributed systems","via":"BC-1210.20"},{"id":"BK-designing-distributed-systems","title":"Designing Distributed Systems","topic":"Distributed systems","via":"BC-1210.10"},{"id":"BK-streaming-systems","title":"Streaming Systems","topic":"Data","via":"BC-1210.20"},{"id":"BK-database-internals","title":"Database Internals","topic":"Data","via":"BC-1210.20"},{"id":"BK-kubernetes-patterns","title":"Kubernetes Patterns","topic":"Cloud & infrastructure","via":"BC-1210.10"},{"id":"BK-infrastructure-as-code","title":"Infrastructure as Code","topic":"Cloud & infrastructure","via":"BC-1210.30"},{"id":"BK-continuous-delivery","title":"Continuous Delivery","topic":"Delivery & DevOps","via":"BC-1210.30"},{"id":"BK-team-topologies","title":"Team Topologies","topic":"Organization & leadership","via":"BC-1210.40"}]},"ancestors":[],"children":[{"id":"BC-1210.10","name":"Compute & Runtime Platform","level":2,"child_count":4},{"id":"BC-1210.20","name":"Data & Messaging Platform","level":2,"child_count":4},{"id":"BC-1210.30","name":"Build & Delivery Tooling","level":2,"child_count":4},{"id":"BC-1210.40","name":"Service Scaffolding & Self-Service","level":2,"child_count":3},{"id":"BC-1210.50","name":"Platform Cost & Capacity","level":2,"child_count":3}]}