Původně šlo o přednášku naší frontenďačky Nadi Tsoy v rámci interního meetupu DKSS. Troufáme si však říct, že jde o natolik skvělý pohled na věčný struggle junior vs. mentor, že si zaslouží větší publikum.
Junior je člověk, který je na začátku kariéry v určitém oboru.
Z této situace plyne taky stres, který junior může mít. Dneska jsem se zasekl už podesáté, nestíhám odevzdávat práci včas, nezvládám dobře svoje úkoly… Jak se s těmihle problémy poprat?
„Tady je třeba pracovat s objektivní zpětnou vazbou. Nesedět a jen dokola neříkat, že nic nezvládám, i když všichni kolem říkají, že to je v pohodě. Teď jsi nastoupil do firmy a všichni počítají s tím, že to neumíš, nezvládáš, nebudeš to dělat super mega dobře,“ uvádí do problému Naďa. Jak ho tedy vyřešit? Je třeba se objektivně zhodnotit. Stavte se za mentorem a ostatními a zeptejte se: Co dělám špatně? Co mohu zlepšit? Teprve podle toho můžete zhodnotit, jestli dobře zvládáte své úkoly.
Je úplně normální, že na začátku nebo hned po nástupu nestíháte. Zde je důležitá spolupráce s týmem, produkťákem a projekťákem, se kterými si nastavíte termíny tak, abyste je stíhali. Jak na to? „Stačí komunikovat, nějak uprostřed sprintu říct: Hele, nestíhám to, potřebuju pomoct,“ doporučuje Naďa.
Navíc i u seniorních a mediorních vývojářů se stává, že nedodají práci včas. Různé meetingy (jako retrospektiva nebo refinement) pomohou věci doladit. Proto jsou termíny víc o komunikaci a managementu než o tom, že něco neumíte.
Další docela častý zádrhel, který vás jako juniora může potkat, je, že nerozumíte tomu, co se po vás chce. Dostanete code review, přečtete to a řeknete si: Ty jo, já fakt nevim, co ten mentor myslí. Naďa má radu i pro tuhle situaci: „Doporučuju za ním přijít a říct: Hele, nechápu tohle a tohle – a přesně popsat, čemu nerozumíte. Nestačí říkat obecně, že tomu prostě nerozumíte, protože ten mentor pak neví, co vám má vysvětlit. Většinou taky nemá čas vám vysvětlovat všechno.“
Tím není myšleno, že nemůžete opakovaně vyřešit jednu věc, ale že se za den zasekáváte pořád na něčem jiném. Tady je třeba hodně práce na vaší straně. Musíte k tomu mít pozitivní přístup, uvědomit si, že jste měli desetkrát možnost se něco naučit a posunuli jste se. „Bude se to dít pokaždý a vždycky se něco naučíte, takže to je fajn. Právě to je důvod, proč mě programování baví. Vždy bude něco, co se můžete naučit,“ dodává Naďa.
To se může stát i na pohovoru, kde se vás zeptají: „Hele, umíš s Gitem?“ A vy odpovíte: „Jo, umím s Gitem.“ Přitom jste ale něco dělali ve škole, pushovali jste do masteru a myslíte, že jste pán bůh. Že to umíte, protože ve škole vám to šlo. Pak nastoupíte do firmy a váš mentor zjistí, že to neumíte. To není ničí chyba, jen jste prostě mysleli, že vaše znalosti stačí, ale realita je jiná. Naďa radí: „Tady vždycky říkám: přiznejte, že to neumíte. Prostě řekněte ‚neumím to‘. A ideálně to začněte řešit co nejdřív.“
Když totiž budete tohle dělat dlouhodobě a danou věc se nedoučíte, váš mentor to bude furt vnímat a pravděpodobně dostanete výpověď. Když se ale naopak daný postup nebo nástroj doučíte, po nějaké době bude mentor rád, že se posouváte.
Tady je důležité, kde je hranice. Většina juniorů čeká, že přijdou do nové práce a bude to jako ve škole. Mentor za nimi bude chodit, bude je motivovat a říkat jim, co a jak. Přitom to má fungovat naopak. Vy máte svého mentora motivovat vás učit, přijít s otázkou nebo návrhem. Nestačí čekat, že za vámi přijde a ukáže vám nějaký magic nebo s vámi bude sedět osm hodin.
Senior by vás měl vždy nasměrovat a pomoct s problémem. Na začátku se bude ptát, jestli nepotřebujete s něčím pomoct, vybere pro vás vhodné zadání nebo řekne, jak by tu feature vyvíjel on. Nebude za vás ale psát kód, nebude za vás řešit věci. Senior zkrátka nesmí mít pocit, že kvůli mentoringu nestíhá svoji práci.
Jak bude mentoring vypadat, můžete zjistit už na pohovoru. Doporučuji se vždy zeptat, jestli má firma na mentorování kapacity. Ve většině firem jsou totiž seniornější vývojáři přetížení a prostě jen nemají čas. Zeptejte se proto, jak velký je tým apod. „A pokud až u nástupu zjistíte, že senior fakt nemá čas a nementoruje vás, i když jste proaktivní, doporučuju co nejdřív odejít,“ říká Naďa. Prostě je lepší se s firmou rozloučit a dál to neřešit.
Jako junior nechcete, aby se mentor cítil zle a není ve vašem zájmu ho naštvat. Pokud ale patříte do některé ze skupin níž, nejspíš docílíte přesného opaku.
Jsou junioři, kteří se snaží všechno rychle vyřešit, nedávají pozor, neodpovídají na všechny komentáře v kódu, nedělají si poznámky na schůzkách. Tomu se vyhněte. Mít to rychle za sebou neznamená svou práci udělat dobře.
Co když si ale zrovna nemáte možnost radu svého mentora zapsat, například když vám u stolu vysvětluje kód? Naďa má tip: „Já používám takovou pauzu, kdy řeknu: Hele, mohu se teď nad tím zamyslet a pak se zeptat? Nebo: Chápu správně, že to je takhle a takhle?“ Nemusíte rovnou odpovídat, že všemu rozumíte. Nechte si čas na promyšlení. Protože co štve mentora nejvíc, je, když se na tu samou věc ptáte 10×.
Pálíte zbytečně čas, nesnažíte se problém pochopit, chodíte pozdě na schůzky, málo analyzujete, nedoptáváte se… To všechno zpomaluje proces vývoje a taky štve seniory. Jak tohle zlomit? Naďa má tzv. hodinové pravidlo.
„Když jsem se už hodinu neposunula a vůbec mi ten proces nejde, tak se radši za mentorem stavím. Je lepší rovnou přijít s kódem či nápadem, který mi nejde, protože jinak bude senior zkoušet všechno, co jste zkoušeli už vy.“ Tenhle postup je lepší než sedět několik týdnů a pak říct, že to nemáte. To nikdo ve firmě nechce – ani mentor, ani vy.
Další skupina juniorů, z nichž jsou senioři nešťastní, jsou ti, kteří se nesnaží sami přijít s řešením. Nemají energii, nezlepšují se, vůbec nic neřeší. Jeden příklad: Nastoupil junior a neměl přístupy k mailu. Tak jednou na obědě přišel a řekl, že nemá e-mail. A pak prostě mlčel a celý týden to neřešil…
Je lepší vyvinout iniciativu, zajít za mentorem. Čtěte články, dokumentaci, zkoušejte nové technologie a obecně se nebojte s mentorem mluvit a mít iniciativu. Požádejte sami o zadání nového úkolu. Doporučuju projevovat zájem o menší bug tasky. Tím poznáte kód a pomůžete seniornímu vývojáři soustředit se na náročnější zadání. Nebo se přidejte ke code review, klidně jako druhý reviewer. Win-win situace.
Hodně mentorů štve, že se junioři vůbec neučí. Učení by ale nemělo skončit nikdy. Poproste mentora o zdroje, při čtení dokumentace rovnou zkoušejte a ověřte si, že všemu rozumíte. „Stalo se mi, že jsem přečetla dokumentaci a všechno se mi zdálo OK, ale nebylo. Od té doby rovnou zkouším, jak kód funguje,“ doplňuje Naďa.
Podobné je to s tooly. Přijdete do firmy a tam využívají různé nástroje a appky, třeba na translation atd. Naučte se tyhle nástroje ovládat, protože když to neumíte, hodně vás to zpomalí. Zkratky a názvosloví dané firmy jsou taky důležité. A hlavní věc: nechtějte všechno hned. Ani váš mentor se nestal seniorem za měsíc.
Komunikace s mentorem je důležitá věc a je třeba na to myslet i z pohledu juniora. Co doporučuje Naďa?
Pokud pracujete na dálku:
„Když vám mentor něco napíše, nesnažte se mu hned odpovídat. Přečtěte si to a dejte tomu čas. Pochopte, co po vás chce, a když už máte nějaké otázky, tak mu zavolejte. A ideálně rovnou ukažte kód, pokud máte problém.“
V kanceláři:
„Neptejte se na něco každou chvíli. Já jsem to vždycky udělala tak, že jsem přišla do práce, udělala si body, kterým nerozumím a kolem oběda jsem mentorovi napsala, jestli si na mě neudělá patnáct minut. A pak můžete dál pokračovat. Je to samozřejmě individuální, jak si to nastavíte, ale za mě je důležitý nerejpat každou chvíli, protože to je pro mentora otravný a pak ani on nemůže dělat svou práci…“
A ještě jedna vychytávka, jak poznat, že už je čas se zajít poradit. Zkuste nejdřív identifikovat problém, přečtěte si errorovou hlášku. Zaměřte se na to, jestli chápete, o co v ní jde. Dá se problém rozdělit na víc částí? Pokud ano, rozdělte ho na to, čemu rozumíte a čemu ne. Teprve pak jděte za mentorem.
Všechno, co jsme zmínili, může dělat i mentor. Je úplně normální dělat chyby. Je však důležité chápat, jak s nimi zacházet a jak se jimi netrápit.
Jak říká Naďa, „vaše kariéra je vaše vlastní. Musíte ji vlastnit a musíte vlastnit svůj růst. Nikdo jiný to za vás neudělá.“ I jako junior máte důležitou funkci v týmu. Obvykle se totiž každý začátečník ptá proč. Představte si situaci, kdy se dva senioři domlouvají, co a jak budou řešit. Přijde junior a zeptá se proč. Senior developeři se zamyslí, vysvětlí a možná díky tomu přijdou na jiný postup. Každý totiž jedeme v nějaké rutině a tu junior pomáhá nabourat.
Pokud seženete do týmu dobrého juniora (tedy takového, který se vyvaruje chyb výše), je to výhra. Oživí týmovou dynamiku a pomůže s menšími či rutinními úkoly. Především ale přináší čerstvý pohled na věc.
Pojďme si tedy ještě jednou shrnout, jak být dobrým juniorem: