Umělá inteligence mění svět programování. Jednodušší ale nebude

Umělá inteligence mění svět programování. Jednodušší ale nebude

V budoucnu se pravděpodobně dočkáme méně vývojářů, za to ale přibude více inženýrů pro úpravu kódu. Kontrolorem pak bude i AI.


S nástupem kódovacích nástrojů založených na umělé inteligenci, jako je Cursor, GitHub Copilot nebo Amazon CodeWhisperer, začíná vývoj softwaru procházet procesem hluboké transformace, v němž zdaleka nezaniká, ale role softwarového inženýra se redefinuje: už nejde jen o psaní kódu, ale stále více o jeho revizi.

Tyto nástroje nejen usnadňují psaní kódu, ale mohou také navrhovat zlepšení a odhalovat chyby, čímž se role vývojáře mění na editora a supervizora práce prováděné umělou inteligencí. Slovy Gergelyho Orosze, inženýra a vlivného hlasatele v technologickém odvětví:

„Nejdůležitější úlohou softwarového inženýra v éře kódovacích nástrojů umělé inteligence je stát se skvělým recenzentem kódu.“

Související článek

Otec umělé inteligence má jasno: Obecná AI je nesmysl
Otec umělé inteligence má jasno: Obecná AI je nesmysl

Hlavní vědecký pracovník společnosti Meta na konferenci GTC společnosti Nvidia napadl koncept AGI. Tvrdí, že systémy umělé inteligence budou asistenty pod lidskou kontrolou, nikoli autonomními entitami s vlastní vůlí.

Spoluzakladatel Instagramu Mike Krieger byl nedávno ještě přímočařejší, když prohlásil, že za tři roky už softwaroví inženýři nebudou psát žádný kód: budou pouze revidovat kód vytvořený umělou inteligencí. Tato předpověď podtrhuje význam analytických schopností a hlubokého porozumění softwaru, tedy dovedností, které budou na trhu práce stále více ceněny.

Od spisovatele k redaktorovi

Vzhledem k tomu, že modely umělé inteligence generují kód stále rychleji a se stále větší složitostí, skutečná profesní hodnota nyní spočívá ve schopnosti odhalovat chyby, předvídat budoucí problémy a uplatňovat odborný úsudek na to, co stroj navrhuje. Pascal Biese (vývojář a zakladatel LLM Watch) to shrnuje takto:

„Když lze kód vytvářet rychlostí blesku, nabývají na významu zejména prevence a intuitivní úsudek.“

Tato změna s sebou přináší paradox: psaní kódu se díky umělé inteligenci zjednodušilo, ale kontrola a ověřování kódu se staly náročnějšími. Nyní je nutné rozlišovat mezi povrchně správným řešením a robustním a dlouhodobě udržovatelným návrhem, což vyžaduje zkušenosti, osvědčené postupy a kritické myšlení. V této souvislosti se schopnost porozumět architektuře softwaru a předvídat, jak se bude v průběhu času vyvíjet, stává neocenitelnou výhodou.

Technické pohovory se také změní

Dopad tohoto vývoje se rozšiřuje i na proces přijímání zaměstnanců v technologických společnostech. Tradičně byli inženýři hodnoceni podle schopnosti řešit algoritmy nebo vyvíjet řešení v reálném čase. Orosz však tvrdí, že nyní je třeba změnit zaměření: posuzovat, do jaké míry je kandidát schopen revidovat kód generovaný umělou inteligencí. To znamená změnu kompetencí, které se u kandidátů hledají, a upřednostnění dovedností kritické analýzy a zkušeností s přezkoumáváním kódu.

Některé společnosti již zavádějí nové formáty pohovorů. Jeden z nich spočívá v předložení chybného kódu (vygenerovaného umělou inteligencí) a vyzvání kandidáta, aby jej zkontroloval a vysvětlil jeho nedostatky. To vedlo k obnovení osobních pohovorů – které zaručují absenci automatické asistence – jako způsobu identifikace odborníků schopných samostatně vytvářet kvalitní kód. Tento přístup hodnotí nejen technické dovednosti, ale také komunikační schopnosti a schopnost srozumitelně vysvětlit složité koncepty.

Jak říká Orosz, „pokud umíte napsat dobrý kód, dokážete rozpoznat špatný kód.“ I když upozorňuje, že tento přístup „je mnohem pracnější a nabízí méně zřejmých vodítek“ ve srovnání s tím, kdybyste kandidáta jednoduše požádali, aby kód napsal sám bez pomoci umělé inteligence. Tento způsob hodnocení testuje schopnost kandidáta identifikovat jemné problémy a chápat dlouhodobé důsledky návrhových rozhodnutí.

Méně rukou, více úsudku

Jedním z nejdiskutovanějších důsledků vzestupu nástrojů umělé inteligence je, že zatímco kvalita vývoje by měla být zachována, nebo dokonce zvýšena, počet potřebných vývojářů by se mohl snížit. Biese varuje, že „k tvorbě softwaru nebudeme potřebovat tolik lidí jako dříve,“ což povede k ještě ostřejšímu soupeření o nejtechničtější pozice. To znamená, že vývojáři se budou muset odlišit nejen svými technickými dovednostmi, ale také schopností přinést projektům strategickou hodnotu.

Toto nové profesní prostředí vyžaduje nejen technické znalosti, ale také úsudek, zkušenosti a systémové myšlení. Biese poznamenává, že tyto vlastnosti „obecně vycházejí ze zkušeností a správných technických postupů.“ I když připouští, že umělá inteligence může být v budoucnu schopna internalizovat i tyto principy, je přesvědčen, že prozatím zůstává lidský faktor nepostradatelný. Schopnost inženýrů porozumět kontextu a potřebám podniku zůstává pro úspěch softwarových projektů klíčová.

Stručně řečeno: role softwarového inženýra nemizí, ale mění se. Schopnost psát bezchybný kód se stává konkurenční výhodou v prostředí, kde za vás mohou psát stroje. Jednoduše řečeno: každý, kdo pouze ví, jak požádat umělou inteligenci, aby něco udělala, aniž by uměl vyhodnotit její odpovědi (jak se zdá, že tvrdí někteří zastánci „vibe coding“), riskuje, že bude nahrazen někým, kdo to umí. Schopnost kritizovat a zlepšovat návrhy AI bude mít zásadní význam pro udržení relevance v oblasti vývoje softwaru.

Člověk hodnotí práci AI a naopak

Na druhou stranu soustředit se pouze na její stránku generování kódu znamená podcenit skutečný potenciál toho, co může AI přinést celému cyklu vývoje softwaru: podle nejnovější zprávy Technology Radar společnosti Thoughtwork se generativní AI ukazuje jako cenná i při složitějších úkolech, jako je porozumění staršímu kódu, v němž je často obtížné se orientovat a který je obtížné dokumentovat. Schopnost AI analyzovat velké objemy kódu a extrahovat užitečné vzory může výrazně urychlit proces údržby a aktualizace stávajících systémů.

V této souvislosti se stále většímu zájmu těší nástroje, jako jsou Cody a Unblocked společnosti Sourcegraph. Například druhý jmenovaný funguje jako asistent poháněný umělou inteligencí, který se integruje s úložišti, dokumentací a systémy správy a odpovídá na technické a provozní otázky v kontextu, což je užitečné zejména při práci se staršími systémy. Tyto nástroje nejen zvyšují efektivitu, ale také snižují riziko chyb tím, že poskytují přesné a relevantní informace v reálném čase.

Zdroje článku:
thoughtworks.com

#