← Back to Blog

Další úzké hrdlo softwaru není kód. Je to všechno kolem něj.

Další úzké hrdlo softwaru není kód. Je to všechno kolem něj.

Kdybyste před dvěma lety řekli většině technických ředitelů, že AI bude psát produkční funkce, refaktorovat starší moduly a zachytávat chyby dřív, než se na ně podívá člověk, označili by to za zázrak produktivity v přípravě. A v úzkém smyslu to tak skutečně je. AI asistenti pro programování jsou opravdu skvělí v tom, že rychle píšou kód.

Pak ale vyvstává otázka, nad kterou stojí za to se zamyslet: pokud se nejpomalejší část tvorby softwaru dramaticky zrychlila, proč nemáme pocit, že týmy dodávají dvakrát rychleji?

Protože psaní kódu nikdy nebylo úzké hrdlo. Úzkým hrdlem byla koordinace všeho kolem něj.

Část, kterou nikdo neautomatizoval

Zamyslete se, co se doopravdy děje mezi „máme nápad“ a „běží to v produkci“. Někdo vymezí rozsah práce. Vývojář ji napíše. Čeká ve frontě na review. Čeká v další frontě na QA. Někdo musí napsat dokumentaci, obvykle až dodatečně a ve spěchu. Někdo nakonfiguruje nasazovací pipeline. Někdo sleduje, jak se to nasazuje. Každý z těchto kroků obnáší předání a každé předání znamená ztrátu kontextu, nové vyjednávání priorit a tiket, který zabral čtyři hodiny skutečného programování, pak stráví čtyři dny čekáním mezi lidmi.

AI asistenti pro programování zrychlili nejrychlejší stanici na celé montážní lince. Všechny ostatní stanice (i fronty, které je spojují) nechali stejně pomalé a ruční jako dřív. Proto se „naši vývojáři teď programují rychleji“ tak často nepřevedlo na „teď vydáváme rychleji“. Zrychlení jednoho kroku v řetězci předávání jen znamená, že práce čeká déle u dalšího.

Nový pohled na to, co má „AI pro vývoj softwaru“ znamenat

Právě tento problém jsme se rozhodli řešit pomocí AITM a proto jsme nevytvořili další nástroj pro automatické doplňování kódu.

AITM je AI platforma pro softwarové inženýrství, která řídí celý životní cyklus vývoje softwaru: plánování, full-stack programování, automatizované code review, end-to-end testování, dokumentaci, CI/CD a nasazení do cloudu, to vše z jediného zadání. Myšlenka je jednoduchá na vyslovení a skutečně obtížná na realizaci: zadejte úkol (Task) jednou a AITM navrhne, naprogramuje, otestuje, zdokumentuje a dodá software připravený pro produkci, aniž by ho člověk musel ručně provádět šesti různými nástroji a čtyřmi různými týmy.

To je jiný druh automatizace než „pomoz mi napsat tuhle funkci rychleji“. Je to automatizace samotných předání, tedy části životního cyklu, kterou nástroje pro produktivitu inženýrů většinou ignorovaly, protože je těžší ji automatizovat než doplňování kódu a méně efektně se předvádí.

Co se změní, když je vlastněna celá pipeline, ne jen jeden krok

Když code review, testování, dokumentace a nasazení nejsou samostatné ruční fronty, ale součástí jednoho průběžně řízeného procesu, vyplyne z toho několik věcí samo. Kód přichází už otestovaný a zdokumentovaný, místo aby přišel jako surový diff, který pak čeká, až se někdo dostane ke zbytku. Architektonická rozhodnutí se od začátku dělají s ohledem na bezpečnost a škálovatelnost, místo aby se dodatečně opravovala po incidentu způsobeném růstem zátěže. A release cyklus se zkracuje, ne proto, že by někdo psal rychleji, ale proto, že software mnohem méně času strávil čekáním ve frontě.

Pro inženýry má tato změna větší význam, než by se na první pohled zdálo. Znamená to méně času stráveného koordinační režií při protlačování změny přes review, QA, do dokumentace a ven do světa, a více času na práci, která opravdu vyžaduje lidský úsudek: co vytvořit, jak to navrhnout a které kompromisy jsou pro tento produkt a tyto uživatele důležité. AI by se nemělo snažit tento úsudek nahradit. Mělo by odklízet vše, co brání v jeho uplatnění.

Skutečná konkurenční otázka

Softwarový průmysl po léta měřil produktivitu tím, jak rychle dokáže jednotlivý inženýr napsat řádek kódu. Byla to rozumná náhrada, dokud bylo psaní kódu to drahé. Dnes už to neplatí. Týmy, které se odtud dostanou do čela, nebudou ty, jejichž inženýři píšou nejrychleji, ale ty, které zkrátily vzdálenost mezi „máme nápad“ a „je to živé, otestované, zdokumentované a bezpečně běží v produkci“.

Na tom je postavena sázka AITM a podle nás právě o tomto posunu budou příští roky AI ve vývoji softwaru - ne o chytřejším doplňování kódu, ale o AI, která zodpovídá za výsledky napříč celým životním cyklem, od začátku do konce.

Pokud s tímto problémem žije i váš tým, rádi se dozvíme, jak o něm přemýšlíte.