{"id":626,"date":"2026-10-20T07:45:00","date_gmt":"2026-10-20T07:45:00","guid":{"rendered":"https:\/\/kolkataorbit.com\/blog\/?p=626"},"modified":"2026-10-20T07:45:00","modified_gmt":"2026-10-20T07:45:00","slug":"platformops-metro-map-primer","status":"publish","type":"post","link":"https:\/\/kolkataorbit.com\/blog\/platformops-metro-map-primer\/","title":{"rendered":"PlatformOps With a Metro Map: A Beginner&#8217;s Walk"},"content":{"rendered":"<p>Take the Kolkata metro at rush hour and you are touching a platform in every sense \u2014 a shared piece of infrastructure, run by specialists, used by everyone, with a map that tells you exactly what you can rely on. That is genuinely the best mental model I know for the software idea this post explains. When a company&#8217;s engineers all need the same plumbing \u2014 pipelines, servers, logins, deployments \u2014 somebody has to run that plumbing like the metro runs: reliably, on published schedules, with nobody&#8217;s commute depending on a favour. The discipline of doing that well is PlatformOps, and this is a friendly walk through it for people meeting the subject on a Monday morning, glossary included, jargon kept on a leash.<\/p>\n<h2>PlatformOps, Before the Jargon Piles Up<\/h2>\n<p>Here is the whole idea in a paragraph. Inside companies with more than a couple of software teams, the same needs keep recurring: everyone needs to ship code, everyone needs somewhere to run it, everyone needs logs and logins and the hundred small services that make a product possible. Teams can each build their own versions, and for a while they do \u2014 and then the company wakes up owning four half-finished copies of everything. The alternative is to build those shared things once, properly, and run them as a service that any team can use without asking permission at every step. PlatformOps is the running part: the schedules, the upkeep, the person to call, and the promise that the last train of the night will actually show up.<\/p>\n<p>What makes it interesting \u2014 and occasionally awkward \u2014 is that none of the users were assigned. Teams choose the shared route because it is genuinely the easier one, the same way most of us choose the metro over arguing about parking. The moment a shared platform has to force people aboard, something has gone wrong upstream, and the operators usually know exactly what.<\/p>\n<h2>The PlatformOps Glossary You Will Actually Use<\/h2>\n<p>Seven terms cover most conversations. Friendly definitions, no exam at the end.<\/p>\n<ul>\n<li><strong>The portal.<\/strong> The front entrance \u2014 the website where you can see what the platform offers, ask for what you need, and find out who to talk to. A good portal is a station map, not a locked turnstile.<\/li>\n<li><strong>The service catalog.<\/strong> The honest list of everything the platform provides, with the owner&#8217;s name beside each entry. Its only job is to be true; the day an entry is wrong is the day users stop trusting the rest.<\/li>\n<li><strong>The golden path.<\/strong> The route the platform team maintains and vouches for \u2014 from code on your laptop to the thing running for users. Like a metro line, it is not the only way across the city; it is the way that comes with a driver, a schedule and someone to complain to.<\/li>\n<li><strong>An SLO.<\/strong> A service level objective \u2014 a written promise about how well something will behave, plain enough that you can tell whether it was kept. &#8220;The login service responds within a second, 99 times out of 100&#8221; is the shape of one.<\/li>\n<li><strong>The error budget.<\/strong> The polite amount of failure a promise allows. If you have committed to 99%, one call in a hundred is budgeted, not a scandal. The budget turns arguments about reliability into arithmetic, which is why everyone calm likes it.<\/li>\n<li><strong>Deprecation.<\/strong> The managed goodbye \u2014 announcing that something will be switched off, helping everyone move to its replacement, and then actually switching it off. Doing this well is the single most trust-building move a platform team can make.<\/li>\n<li><strong>Cognitive load.<\/strong> The amount of stuff a team must hold in their heads to do their work. The platform exists to take some of that weight off product teams \u2014 and if it adds more weight than it removes, users will vote with their feet, quietly and correctly.<\/li>\n<\/ul>\n<p>Watch the words cooperate in one ordinary afternoon and they stop being vocabulary. A developer opens the portal and finds the catalog entry for &#8220;preview environments&#8221;, owned by Ritika, marked generally available. That is her SLO attached \u2014 ready in ten minutes, nine times out of ten. The developer clicks, gets an environment at minute seven, and never learns which cluster it landed on, because that detail is not hers to carry. A month later the entry says &#8220;deprecating in March \u2014 migrate to the v2 template&#8221;, with a migration note that takes four minutes to follow. She follows it, mildly pleased. Nothing in that afternoon required a meeting, a ticket, or a favour \u2014 which is the entire test of whether a platform is being operated or merely possessed.<\/p>\n<h2>Who Does What on the Platform<\/h2>\n<p>Three groups orbit any internal platform, and knowing which you are saves everyone confusion. The <strong>operators<\/strong> run it \u2014 upgrading, measuring, answering pages, and doing the quiet writing that keeps the catalog honest. The <strong>users<\/strong> are the product teams, who treat the platform the way commuters treat the metro: they want it boring, punctual and always there. And in the middle sit the <strong>co-designers<\/strong> \u2014 squads building something new alongside the operators, because sometimes a team needs a custom line rather than the scheduled route. The on-call rule is worth memorising because it prevents so many 3 a.m. injustices: if your application breaks, your team carries it; if a shared component breaks, the operators carry that. Everyone carries their own layer.<\/p>\n<p>Notice what the operators do <em>not<\/em> do. They are not the company&#8217;s mechanics for everything with a plug. Their job is the interfaces and the experience \u2014 the maps, the counters, the schedules \u2014 not every track and wire in the earth. Companies that forget this turn their platform team into a bottleneck with a helpdesk accent, and then wonder why nobody rides anymore.<\/p>\n<p>A day in the operator&#8217;s chair, for contrast, because beginners usually imagine it is either heroic firefighting or endless meetings. Mostly it is neither. The morning is a round of checks: did the promises hold overnight, is anything trending towards its budget, are the upgrade schedules on time. Midday is improvement work \u2014 shaving a minute off the golden path, updating a catalog entry that drifted, pairing with a squad that wants something new. The pager interrupts occasionally, and when it does, the runbook answers before the adrenaline does. The best days are quiet ones, which took me a while to appreciate: in this line of work, boredom is the product shipped to users, and it is delivered on purpose.<\/p>\n<h2>Three Things to Explore This Week<\/h2>\n<p>Reading is lovely; poking is better. Three small expeditions, none needing permission.<\/p>\n<ol>\n<li><strong>Find your golden paths and count them.<\/strong> Ask around: when a new project starts here, what does it copy? One maintained route beats five folk traditions, and simply drawing the current map tells you how much folklore you are running on.<\/li>\n<li><strong>Look for an ownerless thing.<\/strong> Somewhere near you is a script, a server or a library that everybody uses and nobody owns. Find one. The mild dread you feel is the entire business case for PlatformOps, compressed into a single artifact.<\/li>\n<li><strong>Read one real promise.<\/strong> Find any internal tool&#8217;s documentation and look for a commitment about how well it works. If you cannot find one, you have learned something about that tool; if you find one, check whether anyone could tell if it were kept. Either way, you now understand SLOs better than most slide decks teach.<\/li>\n<\/ol>\n<h2>Where to Go From the Station<\/h2>\n<p>If the commuting metaphor landed, treat yourself to the real thing with <a href=\"https:\/\/kolkataorbit.com\/blog\/ride-subterranean-heritage-rails-and-revolutionary-underwater-river-corridors-across-kolkata\/\">a ride through Kolkata&#8217;s metro corridors under the river<\/a> \u2014 shared infrastructure as public art, and a reminder that platforms are oldest idea in cities. On the software side, two pieces from this site make good next stops: <a href=\"https:\/\/kolkataorbit.com\/blog\/navigating-the-full-stack-devops-engineer-roadmap-from-containers-to-server-orchestration\/\">the full stack DevOps engineer roadmap from containers to orchestration<\/a>, which covers the ground a platform operator is expected to know, and <a href=\"https:\/\/kolkataorbit.com\/blog\/core-fundamentals-of-site-reliability-engineering-for-maintaining-high-uptime-production-services\/\">the core fundamentals of site reliability engineering for high-uptime services<\/a>, where the promises and budgets above come from. When you want the source of it all, <a href=\"https:\/\/www.xopsschool.com\/platformops\/\">this Ops Atlas page on PlatformOps<\/a> is the reference the whole subject defers to \u2014 slow read, hot chai, and the jargon never bothers you again.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>A friendly beginner&#8217;s tour of PlatformOps using the metro as the guide: seven usable glossary terms, who does what, and three things to poke at.<\/p>\n","protected":false},"author":6,"featured_media":627,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[496],"tags":[],"class_list":["post-626","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-technology"],"_links":{"self":[{"href":"https:\/\/kolkataorbit.com\/blog\/wp-json\/wp\/v2\/posts\/626","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/kolkataorbit.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/kolkataorbit.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/kolkataorbit.com\/blog\/wp-json\/wp\/v2\/users\/6"}],"replies":[{"embeddable":true,"href":"https:\/\/kolkataorbit.com\/blog\/wp-json\/wp\/v2\/comments?post=626"}],"version-history":[{"count":1,"href":"https:\/\/kolkataorbit.com\/blog\/wp-json\/wp\/v2\/posts\/626\/revisions"}],"predecessor-version":[{"id":679,"href":"https:\/\/kolkataorbit.com\/blog\/wp-json\/wp\/v2\/posts\/626\/revisions\/679"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/kolkataorbit.com\/blog\/wp-json\/wp\/v2\/media\/627"}],"wp:attachment":[{"href":"https:\/\/kolkataorbit.com\/blog\/wp-json\/wp\/v2\/media?parent=626"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/kolkataorbit.com\/blog\/wp-json\/wp\/v2\/categories?post=626"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kolkataorbit.com\/blog\/wp-json\/wp\/v2\/tags?post=626"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}