{"id":4612,"date":"2025-07-10T12:17:40","date_gmt":"2025-07-10T12:17:40","guid":{"rendered":"https:\/\/www.aviator.co\/blog\/?p=4612"},"modified":"2025-10-09T13:01:02","modified_gmt":"2025-10-09T13:01:02","slug":"platform-engineering-wont-save-you","status":"publish","type":"post","link":"https:\/\/www.aviator.co\/blog\/platform-engineering-wont-save-you\/","title":{"rendered":"Platform Engineering Won&#8217;t Save You"},"content":{"rendered":"<figure class=\"wp-block-post-featured-image\"><img fetchpriority=\"high\" decoding=\"async\" width=\"2240\" height=\"1260\" src=\"https:\/\/www.aviator.co\/blog\/wp-content\/uploads\/2025\/07\/platform-engineering.png\" class=\"attachment-post-thumbnail size-post-thumbnail wp-post-image\" alt=\"Platform Engineering Won&#039;t Save You\" style=\"object-fit:cover;\" srcset=\"https:\/\/www.aviator.co\/blog\/wp-content\/uploads\/2025\/07\/platform-engineering.png 2240w, https:\/\/www.aviator.co\/blog\/wp-content\/uploads\/2025\/07\/platform-engineering-300x169.png 300w, https:\/\/www.aviator.co\/blog\/wp-content\/uploads\/2025\/07\/platform-engineering-1024x576.png 1024w, https:\/\/www.aviator.co\/blog\/wp-content\/uploads\/2025\/07\/platform-engineering-768x432.png 768w, https:\/\/www.aviator.co\/blog\/wp-content\/uploads\/2025\/07\/platform-engineering-1536x864.png 1536w, https:\/\/www.aviator.co\/blog\/wp-content\/uploads\/2025\/07\/platform-engineering-2048x1152.png 2048w\" sizes=\"(max-width: 2240px) 100vw, 2240px\" \/><\/figure>\n\n\n<p>Platform engineering has been labeled the evolution of DevOps, the foundation of developer productivity, the solution to delivery bottlenecks, and what could have been the hottest trend in the software industry right now, if it weren\u2019t for AI.<\/p>\n\n\n\n<p>But most of what\u2019s being labeled &#8220;platform engineering&#8221; today is a mix of old ideas, sometimes just with a fresh coat of paint. The <a href=\"https:\/\/platformengineering.org\/blog\/what-is-platform-engineering\" target=\"_blank\" rel=\"noopener\" title=\"\">official definition<\/a> of platform engineering is:&nbsp;<\/p>\n\n\n\n<p>\u201c&#8230;the discipline of designing and building toolchains and workflows that enable self-service capabilities for software engineering organizations in the cloud native era. Platform engineers provide an integrated product, most often referred to as an \u2018internal developer platform,\u2019 covering the operational necessities of the entire life cycle of an application.\u201d<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">But what is platform engineering, really?&nbsp;<\/h2>\n\n\n\n<p>We\u2019ve spent <strong>years building platforms that are still used today<\/strong>, so we decided to sit down and discuss our opinions on platform engineering, including why companies fail and where we\u2019re heading in the next five years. We invite you to read this summary of our ideas and then watch the videos of our conversation embedded below.&nbsp;<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">DevOps is Alive and Well<\/h2>\n\n\n\n<p>We\u2019ve lost count of how many people claim <strong>DevOps is dead<\/strong>. It\u2019s not. The <a href=\"https:\/\/www.donovanbrown.com\/post\/what-is-devops\" target=\"_blank\" rel=\"noopener\" title=\"\">definition<\/a> of DevOps is \u201cthe union of people, processes and products to enable the continuous delivery of value to our end users.\u201d <strong>Platform engineering is a very small subset of DevOps.<\/strong><\/p>\n\n\n\n<p>In fact, this conversation about &#8220;DevOps vs. platform engineering&#8221; is a bit of a red herring. What matters isn\u2019t the team\u2019s name, whether it is called the platform team, developer experience, engineering enablement or something entirely different. What matters is its function.<\/p>\n\n\n\n<p>If you\u2019re helping developers <a href=\"https:\/\/www.aviator.co\/\" target=\"_blank\" rel=\"noopener\" title=\"\">ship software with less friction<\/a>, congratulations, you\u2019re already doing some form of platform engineering. At its core, platform engineering is simple: It\u2019s about developers building tools for other developers to make it easier for them to do their jobs.<br><br>Platform engineering, or whatever we call it, means asking ourselves every day:<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p>How do I make it really easy for developers to do their work and really difficult for them to make mistakes?<\/p>\n<\/blockquote>\n\n\n\n<p>That sounds straightforward, but it\u2019s not. Because making things easy and mistake-proof at the same time is conflicting.&nbsp;<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">We\u2019re Not Building a Platform. We\u2019re Building a Product.<\/h2>\n\n\n\n<p>What matters is this: <strong>Are developers\u2019 jobs better now than before the platform team existed?<\/strong> If the platform team can\u2019t answer that with confidence, the platform is not delivering. Do we track whether developers&#8217; lives have improved since we started?&nbsp; Do we know why our team exists? If the reason is \u201cto improve the tooling we built last year,\u201d that\u2019s not enough.<br><br>This is where most organizations fall flat: they don\u2019t treat the platform like a real product. And that&#8217;s exactly what it is.<\/p>\n\n\n\n<p><strong>Internal platforms are products with real customers: our developers<\/strong>. If we wouldn\u2019t ship a half-baked feature to an external user, why would we think it&#8217;s fine to push a set of tools on developers and require their use, whether they know how to \u2014 or even need those tools at all?<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p>Platform teams need product management, customer feedback, usage telemetry and maybe even \u2014 brace yourself \u2014 internal marketing.<\/p>\n<\/blockquote>\n\n\n\n<p>Yes, marketing. Even Angry Birds needed marketing!&nbsp;<\/p>\n\n\n\n<p>When we worked on the platform team, we gave out T-shirts and stickers, ran lunch and learns, and did internal roadshows. We were very transparent with our intentions, open to feedback and very much part of the community. The platform team can\u2019t exist in an ivory tower, just tossing out instructions to everyone.&nbsp;<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe title=\"How to Succeed at Platform Engineering with Vilas Veeraraghavan and Bryan Finster\" width=\"1490\" height=\"838\" src=\"https:\/\/www.youtube.com\/embed\/z-uppLEd-_8?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Platform Engineering Isn\u2019t Police Work<\/h2>\n\n\n\n<p>Platform teams are about enabling, not policing. But sometimes they become the thou-shalt-not-do-this police. <em>No, you can\u2019t use Jenkins. No, we don\u2019t support that library. You have to use this because we said so.<\/em><em><br><\/em><em><br><\/em>If something is<em> <\/em>broken in the platform, we\u2019ll have legitimately angry internal customers. The last thing we want is to have angry customers when nothing\u2019s broken. We don\u2019t want adoption because people are cornered. We want adoption because the tools we\u2019ve built are actually better.<\/p>\n\n\n\n<p>We describe our platforms as <strong>\u201cpaved paths with room for offroading.\u201d<\/strong> Platform teams create a golden path that\u2019s easy, safe and well-supported, but leave the door open for teams that have good reasons to do something different.<\/p>\n\n\n\n<p>Standardization matters \u2014 it reduces support burden and failure modes. But standardization by force just leads to resistance, shadow tooling and resentment.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Beware the Vanity Metrics<\/h2>\n\n\n\n<p>Let\u2019s also address the elephant in the metrics room: <strong>The platform team&#8217;s effectiveness is often measured by usage. <\/strong><a href=\"https:\/\/thenewstack.io\/the-anti-metrics-era-of-developer-productivity\" target=\"_blank\" rel=\"noopener\" title=\"\"><strong>Usage is not the same as impact<\/strong><\/a><strong>, especially if it\u2019s mandated.&nbsp;<\/strong><\/p>\n\n\n\n<p>When platform teams are incentivized on internal tool adoption instead of impact, they inevitably end up forcing change instead of earning buy-in.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p>Saying \u201cour platform saved 1,500 developer hours\u201d is meaningless unless we know what those 1,500 hours turned into. Were more features delivered? Was customer satisfaction improved? Did product velocity increase?<\/p>\n<\/blockquote>\n\n\n\n<p>Return on investment (ROI) in platform engineering is hard to measure. There\u2019s nothing we can do short-term, and developer happiness is very hard to measure, no matter how many surveys you do.&nbsp;<\/p>\n\n\n\n<p>We can look at lagging indicators like delivery lead time, quality, reliability and revenue from new features. But again, we have to do the hard work of product management and talk to our customers. Developers are using the platform, but are they able to do their jobs better?<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Portals Won\u2019t Solve All Your Problems<\/h2>\n\n\n\n<p><a href=\"https:\/\/www.aviator.co\/blog\/internal-developer-portals-internal-developer-hubs\/\" target=\"_blank\" rel=\"noopener\" title=\"\">Internal developer portals<\/a> are all the rage. And like most shiny tools, they\u2019re being oversold. A developer portal is just that \u2014 a tool. A useful one, if it helps developers get started quickly, find documentation and request resources without begging on Slack.<\/p>\n\n\n\n<p>But a tool is not a platform. A tool does not fix a broken culture, poor communication or a lack of product thinking. <a href=\"https:\/\/www.aviator.co\/blog\/why-some-companies-fail-to-adopt-internal-developer-portal\/\" title=\"\">Backstage won\u2019t save you<\/a>. It worked for Spotify because it solved its problems. You need to understand yours.<br><br>You want to know if your platform is any good? Check in a year. The strength of a good platform is only defined by how long it sustains: Is it still being used? Is it still useful? Did developers voluntarily adopt it? Did you evolve it based on their feedback? Or does no one use it, and you decide to shut it down because it\u2019s too much to maintain?&nbsp;<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe title=\"Platform Engineering Predictions For the Next 5 Years with Vilas Veeraraghavan and Bryan Finster\" width=\"1490\" height=\"838\" src=\"https:\/\/www.youtube.com\/embed\/F9QBmY3quTo?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n\n\n<p><br><strong><em>\u00a0Learn, share and collaborate on topics related to developer productivity. Join <a href=\"https:\/\/dx.community\/\" target=\"_blank\" rel=\"noopener\" title=\"\">Hangar DX<\/a>,  a community of senior DevOps and senior software engineers focused on developer experience.<\/em><\/strong><\/p>\n\n\n\n<!-- Hardcoded CTA for Hangar DX -->\n<div style=\"position: relative; display: flex; align-items: center; background: #FFD966; padding: 20px 30px; border-radius: 10px; margin: 40px 0; justify-content: space-between; flex-wrap: wrap; overflow: hidden; max-width: 860px; box-shadow: 0px 4px 10px rgba(0,0,0,0.1);\">\n    <div style=\"flex: 1; z-index: 2; max-width: 500px;\">\n        <h2 style=\"margin: 0; color: #0C344B; font-size: 20px; font-weight: 600;\">Join The Hangar DX<\/h2>\n        <p style=\"color: #333; font-size: 13px; margin-bottom: 15px;\">A vetted community of developer-experience (DX) enthusiasts.<\/p>\n        <form id=\"hubspot-form\" action=\"https:\/\/forms.hubspot.com\/uploads\/form\/v2\/40144919\/d19cd783-21ad-4c7a-b188-1626fcf45ac1\" method=\"POST\" style=\"display: flex; gap: 6px; align-items: center; max-width: 400px;\">\n            <input type=\"hidden\" name=\"hs_context\" value='{\"hutk\": \"{{contact.hs_context}}\"}'>\n            <input type=\"email\" name=\"email\" placeholder=\"Email\" required style=\"padding: 8px; border: 1px solid #ccc; border-radius: 5px; width: 130px; font-size: 13px; background: white;\">\n            <input type=\"text\" name=\"company\" placeholder=\"Company\" required style=\"padding: 8px; border: 1px solid #ccc; border-radius: 5px; width: 130px; font-size: 13px; background: white;\">\n            <button type=\"submit\" id=\"submit-btn\" style=\"background: #5A87F0; color: white; border: none; padding: 8px 15px; border-radius: 5px; cursor: pointer; font-size: 13px; font-weight: 600; display: flex; align-items: center; justify-content: center; min-width: 130px;\">Request access<\/button>\n        <\/form>\n        <p id=\"success-message\" style=\"display: none; color: #0C344B; font-size: 14px; font-weight: 400; margin-top: 10px;\">Thank you! We&#8217;ll be in touch.<\/p>\n    <\/div>\n    <div style=\"position: absolute; top: 0; right: 0; width: 100%; height: 100%; background: linear-gradient(to bottom left, white 15%, #FFD966 45%); z-index: 1; pointer-events: none; clip-path: polygon(60% 0%, 100% 0%, 100% 100%, 70% 100%);\"><\/div>\n    <div style=\"max-width: 220px; z-index: 2; position: absolute; right: 10px; bottom: -25px;\">\n        <img decoding=\"async\" src=\"\/blog\/wp-content\/uploads\/2025\/03\/aviator-hangar-dx-plane-logo-illustration-clear-min.png\" alt=\"Aviator Hangar DX Plane Illustration Logo\" style=\"max-width: 100%; height: auto; transform: scale(1.05);\">\n    <\/div>\n<\/div>\n\n<script>\n  document.getElementById(\"hubspot-form\").addEventListener(\"submit\", function(event) {\n    event.preventDefault(); \/\/ Prevent default submission behavior\n    \n    var form = this;\n    var formData = new FormData(form);\n    \n    fetch(form.action, {\n      method: \"POST\",\n      body: formData,\n      headers: {\n        \"Accept\": \"application\/json\"\n      }\n    }).then(response => {\n      if (response.ok) {\n        document.getElementById(\"submit-btn\").style.display = \"none\";\n        document.getElementById(\"success-message\").style.display = \"block\";\n      }\n    }).catch(error => console.error(\"Error:\", error));\n  });\n<\/script>\n\n\n\n<p><em>This article is a summary of a discussion I&#8217;ve had with <strong>Vilas Veeraraghavan<\/strong> and <strong>Bryan Finster<\/strong>, and was originally <a href=\"https:\/\/thenewstack.io\/platform-engineering-vs-devops-misses-the-point\/\" target=\"_blank\" rel=\"noopener\" title=\"\">published on The New Stack<\/a>.<\/em><\/p>\n\n\n\n<p><em><strong>Vilas Veeraraghavan<\/strong> is an experienced engineering leader who has driven platform, product and developer tooling innovation at Comcast, Netflix, Walmart, Bill and Truckstop.<br><br><strong>Bryan Finster<\/strong> is a passionate advocate for continuous delivery with over two decades of experience building and operating mission-critical systems for very large enterprises. He currently works for Defense Unicorns, helping to solve the hardest software supply chain problems.<\/em><\/p>\n","protected":false},"excerpt":{"rendered":"<p>If you\u2019re helping developers ship software with less friction, congratulations, you\u2019re already doing some form of platform engineering.<\/p>\n","protected":false},"author":18,"featured_media":4615,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[285],"tags":[286,117,288,270,287],"class_list":["post-4612","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-platform-engineering"],"blocksy_meta":[],"acf":[],"aioseo_notices":[],"jetpack_featured_media_url":"https:\/\/www.aviator.co\/blog\/wp-content\/uploads\/2025\/07\/platform-engineering.png","post_mailing_queue_ids":[],"_links":{"self":[{"href":"https:\/\/www.aviator.co\/blog\/wp-json\/wp\/v2\/posts\/4612","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.aviator.co\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.aviator.co\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.aviator.co\/blog\/wp-json\/wp\/v2\/users\/18"}],"replies":[{"embeddable":true,"href":"https:\/\/www.aviator.co\/blog\/wp-json\/wp\/v2\/comments?post=4612"}],"version-history":[{"count":9,"href":"https:\/\/www.aviator.co\/blog\/wp-json\/wp\/v2\/posts\/4612\/revisions"}],"predecessor-version":[{"id":5018,"href":"https:\/\/www.aviator.co\/blog\/wp-json\/wp\/v2\/posts\/4612\/revisions\/5018"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.aviator.co\/blog\/wp-json\/wp\/v2\/media\/4615"}],"wp:attachment":[{"href":"https:\/\/www.aviator.co\/blog\/wp-json\/wp\/v2\/media?parent=4612"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.aviator.co\/blog\/wp-json\/wp\/v2\/categories?post=4612"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.aviator.co\/blog\/wp-json\/wp\/v2\/tags?post=4612"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}