Článek
Přeplacení ajťáci
Stále častěji se setkávám s názorem, že ajťáci v Česku jsou přeplacení lidé, kteří dohromady nic neumí a bohatí jsou jen proto, že se zúčastňují předražených státních zakázek na IT projekty, které jsou vlastně úplně zbytečné a navíc stojí daňové poplatníky spoustu peněz. Tato představa ovšem vychází z toho, že běžný občan o vývoji softwaru neví zhola nic.
Když takovým lidem řeknete, že pracujete v IT, obvykle se rozdělí do tří skupin. První skupina neurčitě pokrčí rameny, protože si za tím neumí představit nic konkrétního. Druhá skupina za tím vidí jen peníze, a tak řeknou něco ve smyslu: „Jó, to jsou ti, co berou peníze za nic.“ (Na to jim obvykle odpovídám, že jen hlupák bere peníze za práci, když je může brát za nic.) No a ta třetí skupina se k vám spiklenecky nakloní a řekne, že jim blbne počítač, jestli nevíte, čím to může být.
Pravda je ale taková, že vývoje softwaru není jen psaní čehosi triviálního, co „prostě funguje“. Je to soubor mnoha dovedností, znalostí a schopností, které za pomocí hlubokého soustředění, představivosti a ovládnutí technických možností programovacího jazyka dokáží řešit od jednoduchých až po ty nejkomplexnější problémy.
Špička ledovce
V článku Why does Software Engineering take so long? připodobňuje autor Keaton Brandt vývoj softwaru k ledovci. Na jeho špičce se nachází to, co znají začínající programátoři nebo i lidé, kteří mají alespoň minimální představu o tom, jak funguje nějaký program. Tedy že je to soubor funkčních celků a algoritmů umožňujících provádět velké množství operací za velmi krátkou dobu.
Když ale mladý začínající programátor získá svoji první práci v softwarové firmě, velmi rychle si uvědomí, že pod hladinou se toho skrývá mnohem víc. Aplikace jsou totiž vytvořené pomocí programovacího jazyka vytvářejícího sadu různých instrukcí a algoritmů (nazývaný backend). Jejich vizuální stránku (tedy to, jak aplikace vypadá a jak s ní uživatel interaguje - neboli frontend) však zajištuje zcela jiný programovací jazyk nebo platforma. Většina programů pracuje s velkým množstvím dat, která se musí někam ukládat a jejich přesný výběr se musí uživateli ihned zobrazit na vyžádání. To zajišťují databáze stojící opět na odlišných technologiích (např. SQL). Následují různé frameworky, „meziprogramy“ které zajišťují komunikaci mezi různými jazyky - tzv. API (Application Programming Interface), programy, které udržují kód, programy, které ho dokáží nasadit do uživatelského prostředí, jiné, které zajišťují bezpečnost a tak dále, a tak dále. A tohle všechno musí tým pracující na vývoji softwaru ovládat, aby mohl tvořit aplikace.
Abychom si dokázali představit, o jak složitých věcech se bavíme, zkuste si kterýkoliv program, který běžně používáte na počítači, představit jako autobus, v němž u volantu sedí Čech, ale řadící páku ovládá Němec, pedály zase Polák a všichni tři se musí domluvit na tom, aby se autobus rozjel a udržoval stálou rychlost, vyhnul se překážkám a nesjel ze silnice. Tím to ale nekončí, protože vedle nich sedí Maďar, který zaznamenává činnost všech tří a celý průběh cesty do deníku pro případ nehody. Za nimi navíc sedí Rumun, který je celou dobu na telefonním spojení do Rumunska, odkud získává aktuální informace o dopravě a počasí. Celý autobus je pak plný cestujících, kteří jeden přes druhého křičí svoje požadavky, kam chtějí jet s tím, že každý chce jet někam jinam. Řidič pak musí vymyslet plán cesty tak, aby vyhověl všem cestujícím, ale aby se zároveň nezahltil informacemi, jinak by havaroval!
Proč ale berou tolik?
Odpověď je vcelku prostá: programátoři jsou velice inteligentní a schopní lidé a těch je stále pohříchu málo. Naproti tomu software je úplně všude. Promítněte si celý svůj běžný pracovní den. Jen málokterá věc v něm neobsahuje nějaký systém. K tomu navíc máme internet, který je plný různých webových stránek a aplikací. Je to zkrátka všeprorůstající nástroj, ale jeho tvorbě se věnuje jen poměrně úzká skupina lidí, která k tomu má předpoklady v podobě vysoké inteligence a představivosti. Firmy, které jejich služby využívají, je tedy rádi zaplatí, protože z kvalitního softwaru mají kvalitní profit.
A tak i mladý začínající programátor si může říct o nástupní plat, který má učitel na základní škole po desetileté praxi. Nedávno vyšel článek Hospodářských novin, který tvrdí, že vysokým platům v IT odzvonilo. Nezohledňuje ovšem fakt, že velké softwarové firmy v době finančního růstu nabírali až nesmyslné množství zaměstnanců, které v době post-covidové, vysoké inflace a cen energií nedokázaly uživit, a proto docházelo k masivnímu propouštění i v segmentu, v němž to málokdo čekal. Na pracovní trh se tak uvolnilo velké množství zaměstnanců, kteří si již nemohli klást tak velké požadavky jako kdysi, protože se vytvořil přetlak nabídky.
Jak je to s IT zakázkami?
Pověsti IT lidí a programátorů bohužel nenapomáhají ani stále častější zprávy o nějaké předražené státní zakázce na dodání systému, jako byl například ten na nákup a kontrolu dálničních známek (psalo se ZDE). Těžko pak lidem vysvětlíte, jak složité je postavit nějaký systém, když vám na to řeknou, že borci na víkendovém hackatonu (programátorské setkání, skupina programátorů, analytiků, designérů a testerů z vlastní vůle pracují na nějakém zajímavém projektu) zvládli vytvořit něco, za co si Babišova vláda chtěla říct 400 mil. korun ze státního rozpočtu.
Státní zakázka je zkrátka politická záležitost, ve které se, jako v jakýchkoliv jiných státních zakázkách, budou vždy točit velké peníze. A tam, kde se točí stovky milionů korun, bude vždy bujet korupce a klientelismus. Programátoři v tom obvykle hrají jen roli „dělníků IT“, kteří to celé mají zpracovat. Ale i tihle dělníci musí dostat za svoji práci zaplaceno a jejich plat se bude odvíjet od toho, co umí. Přitom elektronické systémy státní zprávy nejsou o nic jednodušší než ty komerční. I pro ně platí vše výše popsané, k tomu navíc musíme připočíst mnohdy prehistorické systémy, ze kterých musíte migrovat data, zastaralou infrastrukturu, ohromné množství různých zákonných limitů a požadavků a mnoho dalších klacků, které vám celá tato „legrace“ hází pod nohy.
Není tedy divu, že při spouštění takovýchto nových systémů státní správy dojde občas k nějakému zaškobrtnutí nebo výpadkům, protože jen málokdo si umí představit, co všechno je za tím, že si uživatel otevře „jednoduchou“ stránku s formulářem na internetu, vyplní do něj údaje a někam je odešle. Já osobně jsem se však s takovými nedostatky nesetkal, ať už se jednalo o elektronickou občanku, aplikaci Tečka, datovou schránku nebo elektronické přihlášení k dani z nemovitosti.
Můžeme tedy jen doufat, že se situace do budoucna ještě o něco zlepší a lidé budou více přístupní probíhající digitalizaci státní správy, protože s množstvím úkonů, které běžný člověk nebo podnikatel musí učinit, ani jiná cesta není.
Autor pracuje jako systémový analytik pro holandskou společnost.