Preskočiť na hlavný obsah

Všetky články

Platforma: najnepochopenejšie slovo v organizáciách

Problém

CTO oznámi „platformovú iniciatívu“. John, senior inžinier, očakáva vyššiu efektivitu zo zdieľaných nástrojov. Sarah z financií očakáva vyššie výnosy. O šesť mesiacov nie je spokojný nikto. John namiesto plynulejšej práce rieši mätúce metriky adopcie. Sarah sa pýta, kde je sľubovaný rast. Tímy sa sťažujú, že čakajú vo frontoch.

Každý zvaľuje vinu na každého. Lenže skutočný problém vznikol už na tom prvom stretnutí: traja ľudia počuli slovo „platforma“ a každý si pod ním predstavil niečo úplne iné. Tento zmätok premrhá milióny v zle alokovaných investíciách a vytvorí štrukturálne problémy, ktoré pretrvajú celé roky.

Dva úplne odlišné svety

Slovo „platforma“ označuje dve úplne odlišné veci. Majú spoločný názov, ale nič iné.

Externá platforma: produkt.

Ekonómovia definujú platformy ako dvojstranné trhy, ktoré prepájajú odlišné skupiny používateľov so sieťovými efektmi (network effects) (Rochet & Tirole, 2003). Uber prepája vodičov a cestujúcich. Airbnb prepája hostiteľov a hostí. Viac vodičov znamená kratšie čakanie, čo priláka viac cestujúcich, čo zasa priláka viac vodičov. Hodnota rastie s adopciou.

AWS a Azure podľa tejto definície NIE SÚ platformy. Sú to produkty. Keď používate AWS, jeho hodnota nestúpne tým, že AWS používa aj iná firma. Neexistuje žiaden krížový sieťový efekt, ktorý by prepájal odlišné skupiny používateľov. Parker, Van Alstyne & Choudary (2016) tento rozdiel pomenúvajú výslovne: infraštruktúra predávaná zákazníkom je produkt, nie platforma. AWS Marketplace má znaky platformy (prepája predávajúcich a kupujúcich), ale samotné jadro výpočtových a úložných služieb sú len produkty, ktoré si kúpite.

Externé platformy sú produkty so sieťovými efektmi. Úspech poháňa vývoj produktu: súlad s trhom, získavanie používateľov, sieťové efekty a rast tržieb. Meriate product-market fit (súlad produktu s trhom), retenciu, celoživotnú hodnotu zákazníka a tempo rastu.

Interná platforma: zdieľaná služba.

Vnútri organizácií „platforma“ zvyčajne označuje centralizovaný tím, od ktorého závisia iné tímy: napríklad CI/CD, dátová infraštruktúra, CRM alebo ERP. Toto nie sú produkty. Neprepájajú externé skupiny. Nemajú sieťové efekty. Nazývať ich „platformami“ znamená požičať si pojem bez jeho ekonomiky.

Predstavte si Sama, inžiniera, ktorý každý týždeň trávi hodiny čakaním vo fronte tiketov. Centralizovaný tím je úzke hrdlo. Sam sa nevie pohnúť samostatne. Toto je problém blokovania, ktorý ničí interné platformy.

Interné platformy sú zdieľané služby. Úspech stojí na troch kritériách: dobrovoľná adopcia, neblokujúce dodávanie a úspora nákladov. Meriate čakaciu dobu, podiel samoobsluhy a skutočné náklady oproti decentralizovanej alternatíve.

Externá platformaInterná platforma
Čo to jeProdukt prepájajúci externé skupinyZdieľaná služba pre interné tímy
Čo poháňa ekonomikuSieťové efekty (Rochet & Tirole)Interná ekonomika
Kritériá úspechuSúlad s trhom, rast, tržbyAdopcia, neblokovanie, úspora nákladov
Spôsob zlyhaniaŽiadne sieťové efekty, žiadny rastFronty, cena oneskorenia, premrhané zdroje
PríkladyUber, Airbnb, iOS App StoreTím CI/CD, dátová platforma, tím CRM

Tento text sa venuje len interným platformám. Externé platformy (produkty so sieťovými efektmi) sú celkom iná disciplína.

Naprieč celým textom používam „interná platforma“, nie „zdieľaná služba“. Pridať ďalší pojem by zmätok len zväčšilo.

Tri kritériá

Interná platforma vytvára hodnotu len vtedy, keď platia VŠETKY tri kritériá:

  1. Adopcia: tímy ju naozaj používajú dobrovoľne (nie preto, že je nariadená)
  2. Neblokovanie: nulová čakacia doba (samoobsluha pre 95 % a viac požiadaviek)
  3. Interná ekonomika: existuje skutočná úspora nákladov (nie špekulatívne „raz sa to vráti“)

Ak zlyhá čo i len jedno, platforma hodnotu ničí:

  • Vysoká adopcia + neblokovanie, ale zlá ekonomika = vyhodené peniaze
  • Dobrá ekonomika + neblokovanie, ale nízka adopcia = nikto to nepoužíva
  • Vysoká adopcia + dobrá ekonomika, ale blokovanie = cena oneskorenia zožerie celú úsporu

Tri kritériá meriate priamo:

KritériumMetrikaCieľ
AdopciaMiera dobrovoľného používania (bez nariadení)viac ako 80 % oprávnených tímov
NeblokovaniePodiel samoobsluhy (bez človeka v procese)viac ako 95 % požiadaviek
EkonomikaSkutočná úspora nákladov oproti decentralizovanej alternatíveKladná a merateľná

Ak nedokážete preukázať všetky tri kritériá so skutočnými číslami, ste buď v prechodnej fáze (prijateľné), alebo plytváte zdrojmi (neprijateľné).

Príklady

Spotify (zlyhanie). Zdieľaná infraštruktúra obsluhujúca vyše 100 squadov vytvárala fronty (Lee, 2020). Squady čakali týždne. Skúšali prerozdeľovať zdroje, zaviedli nové postupy plánovania a lepšie prioritizovanie. Nepomohlo nič. Vízia infraštruktúrneho tímu sa nezhodovala s tým, čo squady naozaj potrebovali. Cena oneskorenia sa nabaľuje do obrovských škôd pre celú organizáciu. Tie fronty neboli „bolesti rastu“. Bolo to zlyhanie.

Netflix (úspech). Centralizované platformové tímy fungujú, lebo masívne investujú do samoobsluhy. Produktoví inžinieri vymenia flexibilitu za to, že o tretej ráno nemusia riešiť infraštruktúru.

Čo sa stane bez centralizácie

Decentralizácia má reálne náklady: zdvojená práca, nekonzistentné implementácie, znalostné ostrovy (silos), peklo koordinácie aktualizácií, junior inžinieri topiaci sa v neznámej infraštruktúre.

Lenže tu je tá nepríjemná pravda: decentralizovaný chaos s nulovým čakaním je často lepší než elegantná centralizácia s frontmi. Náklady decentralizácie sú konštantné. Cena oneskorenia sa nabaľuje.

Otázka znie: dokážete centralizovať BEZ toho, aby ste vytvorili blokujúce závislosti? Ak áno, centralizujte. Ak nie, zmierte sa s nákladmi decentralizácie. Blokujúca interná platforma je horšia než žiadna interná platforma.

Kritérium neblokovania

Interné platformy dokážu vytvoriť páku: keď tím CI/CD zlepší časy buildov o 30 %, profituje z toho každý tím naraz.

Lenže páka existuje len vtedy, keď je služba neblokujúca. Ak produktové tímy čakajú vo frontoch, cena oneskorenia tú páku zničí. Kingmanov vzorec ukazuje, prečo: čakacia doba rastie exponenciálne, ako stúpa využitie kapacity. Pri 80 % využití spôsobí už malá variabilita citeľné oneskorenia. Pri 90 % oneskorenia vybuchnú. Vynásobte to viacerými blokujúcimi službami a dostanete viactýždňové dodacie doby pri práci, ktorá by mala trvať pár dní.

Toto kritérium je binárne. Je to neblokujúce? Ak áno, centralizácia môže vytvárať hodnotu. Ak nie, centralizácia hodnotu ničí. Neexistuje žiadna „prijateľná dĺžka frontu“. Akékoľvek čakanie sa nabaľuje.

Kedy to dokážete spraviť neblokujúce?

FaktorNeblokujúca centralizácia je možnáRadšej decentralizujte
Vzorce požiadaviekPredvídateľné, automatizovateľnéVeľmi premenlivé, vyžadujú ľudský úsudok
Investícia do samoobsluhyViacročný vývoj platformy je financovateľnýNa nástroje pre samoobsluhu nie sú peniaze
Potreba prispôsobeniaNízka (jedno riešenie sadne väčšine)Vysoká (každý tím potrebuje inú konfiguráciu)
Regulatórne požiadavkyŠtandardizácia je aj tak povinnáFlexibilita je prijateľná

Ak to nedokážete spraviť neblokujúce, decentralizujte. Náklady decentralizácie (duplicita, nekonzistencia) sú reálne, ale nenabaľujú sa tak ako náklady oneskorenia.

Ťažké problémy

Aj neblokujúce služby vytvárajú cenu oneskorenia, keď nútia produktové tímy preberať zmeny. Každá migrácia, ktorú im vnútite, je oneskorenie. Každá nekompatibilná zmena je oneskorenie. Každá bezpečnostná aktualizácia, ktorú nariadite, je oneskorenie (niekedy nevyhnutné, ale nikdy nie zadarmo).

Najlepšie platformy sú nudné a stabilné, nie neustále sa zlepšujúce. Každá zmena, ktorú vytlačíte von, je daňou, ktorá zaťažuje dodávanie produktu.

Kedy interné platformy dávajú zmysel

Centralizujte LEN vtedy, keď dokážete naplniť všetky tri kritériá:

OtázkaAk ánoAk nie
Prijmú to tímy dobrovoľne?PokračujteNestavajte (alebo opravte hodnotovú ponuku)
Dokážete to spraviť neblokujúce?PokračujteNecentralizujte; radšej decentralizujte
Sedí ekonomika?PokračujteNestavajte (je to plytvanie)

Centralizujte, keď je dosiahnuteľná samoobsluha pre 95 % a viac požiadaviek, schopnosť je stabilná, existuje skutočná a merateľná úspora nákladov a máte kapacitu vybudovať poriadnu samoobsluhu.

Necentralizujte, keď to tímy dobrovoľne neprijmú (služba nie je dosť dobrá), nedokážete to spraviť neblokujúce, úspora nákladov je len špekulatívna alebo sa požiadavky menia rýchlejšie, než sa stíha samoobsluha vyvíjať.

Niekedy je centralizácia vynútená bez ohľadu na preferencie: regulatórne oddelenie právomocí, zmluvné SLA, audítorské požiadavky, bezpečnostné nástroje pre celú organizáciu. V regulovaných odvetviach vynucuje dodržiavanie predpisov centralizované modely bez ohľadu na to, čo je teoreticky optimálne pre tok.

Hybridné modely (prechodové stratégie)

Každý model nižšie funguje len vtedy, keď je neblokujúci. Sú to spôsoby, AKO SA DOSTAŤ k neblokovaniu, nie alternatívy k nemu.

ModelAko dosahuje neblokovanieFunguje, keďZlyháva, keď
Tenká platformaStabilné abstrakcie; produktové tímy vlastnia všetko nad nimiAbstrakcie sú naozaj stabilnéPožiadavky sa menia rýchlejšie, než sa vyvíja abstrakcia
Vložení špecialistiInfraštruktúrni inžinieri sedia s produktovými tímami, koordinujú sa cez gilduJe dosť špecialistov na vloženie (1 na 2–3 tímy)Nedá sa najať dosť ľudí; gilda stratí zuby
Zlatá cestaOdporúčaná podporovaná cesta; tímy, čo sa odchýlia, vlastnia svoju zložitosťDá sa investovať do toho, aby bola cesta výbornáCesta nie je dobrá; tímy sa odchyľujú, lebo je zlá
Samoobsluha + mantinelyAutomatizované nástroje so vstavanou kontrolou súladu; ľudia len pri výnimkách80 % a viac požiadaviek sadne do štandardných vzorcovVýnimky sú v skutočnosti 50 % požiadaviek

Väčšina organizácií modely mieša. Mix sa vyvíja. Čo sa nemení: blokovanie je neprijateľné.

Interné platformové tímy už máte

Posúďte ich podľa troch kritérií. Ak čo i len jedno zlyhá, ste v prechodnej fáze (alebo by ste mali byť).

Nízka adopcia znamená, že služba nie je dosť dobrá. Buď ju dramaticky zlepšite, alebo zrušte. Nariadiť používanie problém len zakryje, neopraví ho.

Blokovanie znamená, že musíte agresívne investovať do samoobsluhy (viacročne, ako hlavné zameranie). Ak to nedokážete spraviť neblokujúce do 12 mesiacov, schopnosť decentralizujte alebo službu zrušte.

Zlá ekonomika znamená, že si musíte poctivo spočítať čísla. Zarátajte aj náklady na koordináciu, náklady frontov a bremeno migrácií, ktoré padá na produktové tímy. Ak čísla nesedia, službu zrušte.

Jediná možnosť, ktorá neexistuje: „Nechajme to tak, lebo to prináša hodnotu, ktorú nevieme zmerať.“ Ak hodnotu neviete zmerať, pravdepodobne neexistuje.

Ako majú interné platformové tímy fungovať

Ak vediete interný platformový tím, vašou jedinou úlohou je byť neblokujúci. Sústreďte sa na čas do prvého „hello world“: ako rýchlo dokáže nový tím začať používať vašu službu?

Samoobsluha je na prvom mieste. Každá požiadavka, ktorá vyžaduje zásah človeka, je zlyhanie. Investujte do nástrojov pre samoobsluhu skôr než do funkcií, skôr než do vylepšení, skôr než do čohokoľvek iného. Mierte na 95 % a viac automatizovaných požiadaviek.

Stabilita je na druhom mieste. Každá zmena, ktorú vytlačíte na produktové tímy, im vytvorí cenu oneskorenia. Minimalizujte migrácie, nekompatibilné zmeny a vynútené aktualizácie. Najlepšia platforma je tá, na ktorej existenciu tímy zabudnú.

Merajte čakaciu dobu (cieľ: minimálna), podiel samoobsluhy (cieľ: 95 % a viac) a bremeno zmien dopadajúce na produktové tímy (cieľ: klesajúce). Nemerajte spokojnosť; uväznení používatelia si na čakanie zvyknú ako na normu.

Stanovte si prah na zrušenie. Ak čakacia doba prekročí X dní alebo samoobsluha klesne pod Y %, schopnosť decentralizujte alebo službu zrušte. Bez tohto prahu si blokujúcu službu necháte, „lebo prináša hodnotu“ (neprináša).

Zhrnutie

Interná platforma vytvára hodnotu len vtedy, keď platia všetky tri kritériá:

KritériumTestAk zlyhá
AdopciaTímy ju používajú dobrovoľne, nie z nariadeniaSlužba je zbytočná; zrušte ju
Neblokovanie95 % a viac samoobsluhy, nulová čakacia dobaCena oneskorenia zožerie každú úsporu
Interná ekonomikaSkutočná, merateľná úspora nákladovSlužba je vyhodené peniaze

Ak čo i len jedno zlyhá, buď to opravte, alebo službu zrušte.

Cieľový stav je jednoduchý: tímy dobrovoľne používajú neblokujúcu službu, ktorá šetrí peniaze. Ak tam ešte nie ste, buď k tomu smerujete, alebo plytváte zdrojmi.

Zdroje

Ekonómia platforiem:

Organization Design:

Read in English

Ako to vyzerá v skutočnej organizácii

Všetky články