Dostali sme sa k poslednej časti našej série.
Už sme hovorili o prvých krokoch v povolaní.
O tom, čo sa naozaj oplatí učiť. O Code Review, Clean Code a každodennej práci v tíme.
Zostáva jedna otázka: Kedy vlastne prestaneš byť juniorom?
Táto otázka sa objavuje veľmi často.
Po roku? Po dvoch rokoch? Po piatich? Alebo možno vtedy, keď sa naučíš ďalší framework?
Odpoveď ťa môže prekvapiť. - Neexistuje jedno správne číslo.
Videli sme programátorov s desaťročnými skúsenosťami, ktorí stále potrebovali vedenie pri zložitejších projektoch. Videli sme tiež ľudí so trojročnou praxou, ktorí samostatne navrhovali riešenia, podporovali mladších kolegov a prevzali zodpovednosť za celé moduly systémov.
Práve preto sú v IT roky skúseností len jednou z častí skladačky.
Senior nevie všetko
To je asi najväčší mýtus v branži.
Mnoho juniorov si predstavuje Senior Developera ako človeka, ktorý pozná odpoveď na každú otázku. Realita vyzerá úplne inak.
Dobrý senior veľmi často hovorí: "Neviem."
Ale hneď pridá: "Skontrolujeme to."
To je obrovský rozdiel.
Senior nemusí pamätať celú dokumentáciu. Nemusí poznať každú knižnicu. Nemusí všetko vedieť naspamäť.
Vie však:
- kde hľadať informácie,
- ako overiť riešenie,
- aké riziko súvisí s daným rozhodnutím,
- kedy povedať "neviem" namiesto hádania.
To je jedna z najdôležitejších vlastností zrelého programátora.
Programátor alebo inžinier?
Na začiatku kariéry sa väčšina ľudí sústredí na kód.
Ako napísať funkciu? Ako spraviť API? Ako prepojiť databázu?
S časom si začínaš uvedomovať, že kód je len nástroj.
Skutočným úlohou je vyriešiť obchodný problém.
Klient nekupuje aplikáciu preto, že bola napísaná v konkrétnom jazyku. Kupuje riešenie problému.
Práve vtedy programátor začne myslieť ako inžinier.
Najlepšia funkcia je niekedy tá, ktorú nenapíšeš
Znie to divne? A predsa.
Predstav si, že klient nahlási potrebu vytvoriť nový modul. Môžeš hneď začať navrhovať riešenie. Môžeš tiež položiť niekoľko otázok.
Načo je tá funkcia?
Ako často bude používaná?
Existuje už podobné riešenie?
Dá sa dosiahnuť rovnaký efekt jednoduchším spôsobom?
Veľmi často sa ukáže, že problém možno vyriešiť bez písania stoviek nových riadkov kódu. A práve za také rozhodnutia klient platí. Nie za počet commitov.
Zodpovednosť začína tam, kde končí kód
Senior nezodpovedá len za svoju časť projektu. Pozerá širšie.
Premýšľa:
- ako zmena ovplyvní iné moduly,
- či bude riešenie škálovateľné,
- či bude nová funkcionalita ľahko udržiavateľná,
- aké riziko prináša nasadenie,
- či používatelia skutočne získajú prínos.
To je úplne iný spôsob myslenia.
Dobrý senior vytvára ďalších seniorov
To je jedna z najkrajších vecí v našom odbore.
Najlepší programátori, ktorých sme stretli, sa nikdy neobávali zdieľať vedomosti. Práve naopak.
Tešili sa, keď sa niekto z tímu rozvíjal rýchlejšie. Pretože silný tím vždy vyhrá nad osamelým hrdinom.
Viac než dvadsať rokov sme mali možnosť pozorovať, ako ľudia, ktorí u nás začínali praxou, sa stávali plnohodnotnými členmi tímu. Jednu z takýchto príbehov sme opísali v prvej časti tejto série.
Dnes táto osoba samostatne vedie náročné úlohy, navrhuje riešenia a podporuje mladších programátorov.
Stalo sa to zo dňa na deň? Samozrejme že nie. Je to výsledok stoviek hodín učenia. Desiatok Code Review. Nespočetných otázok. Urobených chýb. A obrovskej zvedavosti voči svetu.
AI nenahradí dobrého programátora
Téma nesmela chýbať. Mení umelá inteligencia náš odbor? - Áno. Veľmi.
Znamená to, že programátori prestanú byť potrební? - Práve naopak.
Mení sa charakter práce. Čoraz menej času venujeme písaniu opakujúceho sa kódu.
Čoraz viac času na:
- analýzu problémov,
- navrhovanie architektúry,
- overovanie riešení,
- diskusie s klientmi,
- rozhodovanie.
AI je skvelým asistentom. Ale zodpovednosť za projekt stále nesie človek. A tak bude ešte dlho.
Čo nenapíšeš do životopisu
Životopis ukáže:
- programovacie jazyky,
- frameworky,
- certifikáty,
- skúsenosti.
Neukáže však veci, ktoré často rozhodujú o úspechu.
Dokážeš priznať chybu?
Vieš požiadať o pomoc?
Ceníš si čas ostatných?
Dodržiavaš dohodnuté veci?
Dokážeš pokojne riešiť konflikty?
Preberáš zodpovednosť za svoje rozhodnutia?
Práve tieto vlastnosti spôsobujú, že tím chce s tebou pracovať.
Keby sme mohli dať len jednu radu...
Po viac než dvadsiatich rokoch tvorby softvéru by sme mohli hovoriť o technológiách.
O architektúre. O frameworkoch. O umelej inteligencii.
Ale keby sme ti mali zanechať len jednu radu, znela by takto: Nikdy nestrácaj zvedavosť.
Technológie sa budú meniť. Programovacie jazyky sa budú vyvíjať. Frameworky budú vznikávať a zaniknúť.
Ale zvedavosť, pokora, chuť učiť sa, schopnosť klásť otázky - to sú kompetencie, ktoré budú vždy potrebné.
Slovníček pojmov
Senior Developer
Skúsený programátor, ktorý nielen vytvára kvalitný kód, ale tiež navrhuje riešenia, prijíma technické rozhodnutia, podporuje tím a preberá zodpovednosť za realizované projekty.
Architektúra softvéru
Spôsob navrhnutia aplikácie a vzťahov medzi jej prvkami, ovplyvňujúci rozvoj, výkon a ľahkosť údržby systému.
Škálovateľnosť
Schopnosť systému zvládať rastúci počet používateľov, dát alebo procesov bez straty výkonu.
Commit
Záznam zmien v systéme správy verzií Git, umožňujúci sledovať históriu vývoja projektu.
Mentoring
Proces odovzdávania vedomostí a skúseností menej skúseným členom tímu, podporujúci ich profesionálny rozvoj.
Zhrnutie celej série
Ak si prečítal všetky štyri časti, možno si si všimol, že sme veľmi zriedka písali o konkrétnych frameworkoch.
Úmyselne.
Technológie sa menia rýchlejšie než kedykoľvek predtým.
To, čo je dnes najpopulárnejšie, môže byť o pár rokov len kuriozitou.
Naopak spôsob myslenia dobrého programátora zostáva nezmenený; Analytické myslenie. Zodpovednosť. Komunikácia. Tímová práca. Zvedavosť.
Práve tieto veci spôsobujú, že z juniora sa stávaš mid developerom, a časom seniorom.
Vo Web24 už viac než 20 rokov vytvárame softvér pre klientov z rôznych odvetví. Počas tej doby sme si overili jednu vec. Najlepších programátorov nespoznáš podľa toho, koľko programovacích jazykov ovládajú. Spoznáš ich podľa toho, ako riešia problémy, spolupracujú s ľuďmi a ako veľmi im záleží na kvalite toho, čo tvoria.
Ak práve začínaš svoju cestu v IT, prajeme ti, aby si nikdy nestratil zvedavosť.
Pretože práve od nej začína každá dobrá kariéra.



