{"id":1201,"date":"2026-10-20T15:55:00","date_gmt":"2026-10-20T15:55:00","guid":{"rendered":"https:\/\/learnflying.com\/blog\/?p=1201"},"modified":"2026-10-20T15:55:00","modified_gmt":"2026-10-20T15:55:00","slug":"platformops-first-90-days","status":"publish","type":"post","link":"https:\/\/learnflying.com\/blog\/platformops-first-90-days\/","title":{"rendered":"Your First 90 Days of PlatformOps, Step by Step"},"content":{"rendered":"<p>Every syllabus in aviation shares one design: a defined first lesson, a first solo, a first cross-country, each with clear standards to meet before you advance to the next. It works because nobody is asked to improvise a curriculum mid-air. PlatformOps deserves the same treatment. Operating a company&#8217;s internal developer platform like a product line \u2014 owners attached, service levels published, upgrades planned, retirements honest \u2014 sounds like a two-year transformation when vendors describe it, but the first ninety days have a shape anyone can follow. This is that shape, as steps. The plan assumes a small team \u2014 one or two engineers with a mandate and a little budget \u2014 an existing engineering organisation of a half-dozen teams or more, and no platform programme yet in place. If your context differs wildly, the steps still order correctly; only the durations shift.<\/p>\n<h2>Before day one: the PlatformOps briefing<\/h2>\n<p>One clarification keeps the whole quarter coherent. What you are about to run is not a tooling rollout; it is the opening of an internal service business whose customers sit one floor away. DORA&#8217;s research programme frames the discipline as sociotechnical at root: the tooling and the human arrangements around it change together, or they do not really change at all. The CNCF adds a property worth memorising before any work order is written: platforms are meant to be optional and composable, which means every step below earns its place by being chosen, never by being decreed. Budget one hour with your sponsor to agree on that framing. If your sponsor expects a finished portal in a month, renegotiate now, not on day sixty.<\/p>\n<h2>Days 1-10: five interviews and an honest inventory<\/h2>\n<p>Start where any flight instructor starts: find out what the student actually brings.<\/p>\n<ol>\n<li><strong>Interview five teams.<\/strong> One hour each, no slides. Ask what eats their week, which requests wait longest, and where releases go wrong. Write down quotes, not summaries \u2014 quotes survive committee rewrites, and they keep the work honest when enthusiasm starts decorating the story.<\/li>\n<li><strong>Inventory existing capability.<\/strong> List every shared script, template, pipeline, and runbook that already exists, with the person who understands it. Most organisations discover they own more platform than they thought, held together by three people&#8217;s goodwill.<\/li>\n<li><strong>Write the charter.<\/strong> One page: the platform&#8217;s purpose, its first customers by name, and what it will not do this quarter. A charter that fits on one page gets read; a strategy deck gets skimmed and resented.<\/li>\n<li><strong>Adopt the thinnest-viable-platform principle.<\/strong> Commit, in writing, to building the smallest set of capability that real teams will actually pull. The phrase comes from the Team Topologies book and is the best known antidote to platform sprawl.<\/li>\n<\/ol>\n<p>A note on the charter, because it earns its hour: the strongest ones name a single sentence of intent, three customers by team name, an explicit not-doing list for the quarter, and the one measure that will decide success. Everything a sponsor might misremember later should be on that page. When a director asks in week seven whether the platform will also handle cost reporting, the answer is a calm point to the not-doing list \u2014 not an apology, and not a scope change absorbed in silence.<\/p>\n<h2>Days 11-30: choose the one route worth paving<\/h2>\n<p>From the interviews, pick the single most repeated, most painful workflow \u2014 for most organisations, creating a brand-new service from nothing. That becomes your first golden path: an opinionated, supported route with the organisation&#8217;s best decisions already installed. Resist the urge to pave three routes; a platform team that ships one excellent path earns more credibility than one that ships three drafts. Alongside the build, capture a baseline measurement so the improvement will be provable later: how long a new service takes today, counted in working days, with the waits itemised.<\/p>\n<p>The baseline matters more than it looks. Without it, day-ninety claims rest on memory, and memory is generous to its author. With it, the platform&#8217;s first progress report is arithmetic rather than advocacy \u2014 and the same arithmetic will justify the second quarter&#8217;s budget without a single persuasive adjective.<\/p>\n<ul>\n<li><strong>Recruit a design partner.<\/strong> One team, genuinely willing, ideally the one that complained loudest in the interviews. They will use the route first and tell you the truth first.<\/li>\n<li><strong>Ship incrementally to that partner.<\/strong> Weekly, not quarterly. Their friction is your requirements document.<\/li>\n<li><strong>Name the owner and draft the promise.<\/strong> The route needs a responsible human and a draft service level \u2014 for example, service running within one working day, measured and published.<\/li>\n<\/ul>\n<h2>Days 31-60: the beta, with two teams<\/h2>\n<p>A design partner proves the route works for people who helped build it; a beta proves it works for strangers. Bring in a second team \u2014 different product, different temperament \u2014 and let them run the path without you in the room. Watch where they hesitate, because hesitation marks the undocumented assumption. Expect the humbling discoveries: the documentation that only makes sense if you already know the answer, the default that suits the platform team and nobody else, the dependency on a person rather than a page. Every one of those is a defect the design partner was too polite to mention. During the beta window:<\/p>\n<ol>\n<li>Tighten the template until the second team needs no hand-holding at all.<\/li>\n<li>Publish the service level, support channel, and a one-page guide written for someone who missed every meeting.<\/li>\n<li>Set the on-call arrangement in writing: the platform team carries faults in platform parts, the application team carries their own services, at any hour.<\/li>\n<li>Log the metric weekly. Time-to-first-deploy is the headline number; by day sixty you should be quoting it in hours, not days.<\/li>\n<\/ol>\n<h2>Days 61-90: taking PlatformOps to general availability<\/h2>\n<p>Graduation to GA is a set of declarations, not a party. The route moves to general availability with a published service level, a runbook for its known failure modes \u2014 written from the beta&#8217;s actual incidents, not imagined ones \u2014 and a named engineer on the rota. Alongside it, adopt a lifecycle policy so every future capability has a labelled life: Proposed, Alpha, Beta, GA, Deprecated, Retired. Labels feel bureaucratic until the first argument they prevent \u2014 nobody argues over whether an Alpha-grade tool should page anyone at night.<\/p>\n<p>Then perform the step that separates operators from announcers: <strong>your first deprecation.<\/strong> Choose one ageing script or legacy route that the new path replaces. Announce it with a date, write the migration guide, assign an engineer to help teams across, and retire it on schedule. Warnings alone rarely move anyone; a staffed retirement moves whole squads. That single act teaches the organisation more about how this platform will be run than any launch email, because it shows commitments are honoured in both directions \u2014 on creation and on withdrawal.<\/p>\n<h2>The checks ride, and what comes after<\/h2>\n<p>Close the quarter as a syllabus closes: with standards met and logged. Present four numbers to your sponsor \u2014 baseline versus current time-to-first-deploy, the count of teams on the route voluntarily, the service level attained, and one capability retired. Then repeat the loop at slightly larger scale: second route, third beta, first full quarterly review. Momentum in this discipline compounds the way flight hours do; nothing dramatic happens on any single Tuesday, and one day the operation simply runs itself on published promises. Ninety days is not the destination \u2014 it is the first time the logbook shows standards met, which is exactly what a syllabus is for. Teams watching their training budgets will recognise the philosophy in our guides to <a href=\"https:\/\/learnflying.com\/blog\/ways-to-reduce-flight-training-expenses\/\">reducing flight training expenses<\/a> and <a href=\"https:\/\/learnflying.com\/blog\/how-aircraft-type-affects-flight-training-cost-2\/\">how aircraft type changes what training costs<\/a> \u2014 spend where repetition is real, measure what you fund, and advance only on demonstrated standards.<\/p>\n<p>For the deeper syllabus \u2014 architecture layers, product-management practice for platforms, and the full adoption research \u2014 open <a href=\"https:\/\/www.xopsschool.com\/platformops\/\">the Ops Atlas PlatformOps entry<\/a>; it is the set text we would assign beside this plan. And if your team&#8217;s budget conversation turns to funding the platform at all, the scholarship mindset in <a href=\"https:\/\/learnflying.com\/blog\/scholarship-guide-for-flight-training-students\/\">this guide to funding flight training<\/a> translates surprisingly well: committed money, documented milestones, and no shame in starting small.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>A flight-syllabus-style plan for PlatformOps: five interviews, one golden path, a two-team beta, general availability, and a first deprecation.<\/p>\n","protected":false},"author":6,"featured_media":1202,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[851],"tags":[],"class_list":["post-1201","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-flight-training"],"_links":{"self":[{"href":"https:\/\/learnflying.com\/blog\/wp-json\/wp\/v2\/posts\/1201","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/learnflying.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/learnflying.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/learnflying.com\/blog\/wp-json\/wp\/v2\/users\/6"}],"replies":[{"embeddable":true,"href":"https:\/\/learnflying.com\/blog\/wp-json\/wp\/v2\/comments?post=1201"}],"version-history":[{"count":1,"href":"https:\/\/learnflying.com\/blog\/wp-json\/wp\/v2\/posts\/1201\/revisions"}],"predecessor-version":[{"id":1215,"href":"https:\/\/learnflying.com\/blog\/wp-json\/wp\/v2\/posts\/1201\/revisions\/1215"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/learnflying.com\/blog\/wp-json\/wp\/v2\/media\/1202"}],"wp:attachment":[{"href":"https:\/\/learnflying.com\/blog\/wp-json\/wp\/v2\/media?parent=1201"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/learnflying.com\/blog\/wp-json\/wp\/v2\/categories?post=1201"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/learnflying.com\/blog\/wp-json\/wp\/v2\/tags?post=1201"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}