Na začiatku kariéry vývojára sa často cítite strašne: pred vami stoja neznáme problémy, treba sa veľa naučiť a robiť ťažké rozhodnutia. A v niektorých prípadoch sa v týchto rozhodnutiach mýlime. To je úplne prirodzené a nemali by ste sa kvôli tomu biť do hlavy. Ale to, čo by ste mali robiť, je pamätať si svoje skúsenosti do budúcnosti. Som senior vývojár, ktorý v minulosti spravil množstvo chýb. Nižšie vám poviem o ôsmich z najvážnejších, ktoré som spôsobil, keď som bol ešte nováčik vo vývoji, a vysvetlím, ako sa im dalo vyhnúť.

Vzal som prvé, čo sa ponúklo
Keď sa učíte písať kód sami alebo dokončujete štúdium na univerzite, získať prvú prácu v odbore sa stáva jedným z hlavných cieľov. Niečo ako svetlo na konci dlhého tunela.
A nájsť prácu nie je jednoduché. Čoraz viac ľudí sa uchádza o pozície juniorov. Musíte , prejsť cez celú sériu pohovorov a často sa celý tento proces značne predlžuje. Vzhľadom na všetko toto nie je prekvapujúce, že akákoľvek ponuka práce vyvoláva túžbu chytiť sa jej oboma rukami.
A predsa to môže byť zlý nápad. Moja prvá práca bola ďaleko od ideálu, pokiaľ ide o profesionálny rast aj o radosť z procesu. Vývojári sa riadili heslom 'to stačí', a nebolo zvykom sa príliš snažiť. Všetci sa snažili hodiť vinu jeden na druhého a ja som často musel uľahčiť veci, aby som sa zmestil do veľmi stiesnených termínov. Ale najhoršie bolo, že som sa absolútne nič nenaučil.
Na pohovoroch som ignoroval všetky varovania, tak ma očarila perspektíva zamestnať sa. Ak sa objavili nejaké pochybnosti, všetky mi vyleteli z hlavy, keď som počul, že ma berú! A ešte za dobrú mzdu!
A to bola veľká chyba.
Prvá práca má obrovský význam. Poskytuje celkový prehľad o tom, aké to je byť skutočným programátorom, a skúsenosti a vzdelanie, ktoré z nej získate, môžu položiť základ pre celú vašu budúcu kariéru. Preto je dôležité dôkladne sa oboznámiť s ponukou a zamestnávateľom predtým, než sa rozhodnete prijať ponuku. Ťažké skúsenosti alebo zlý mentor — to naozaj nepotrebujete.
- Hľadajte informácie o spoločnosti. Prezrite si weby s recenziami, navštívte oficiálnu stránku, jednoducho prehľadávajte internet a zhromažďujte názory. Takto lepšie pochopíte, či spoločnosť vyhovuje vašim potrebám a cieľom.
- Opýtajte sa známych. Ak niekto vo vašej blízkosti pracoval pre tohto zamestnávateľa alebo pozná niekoho z personálu, porozprávajte sa s nimi osobne. Zistite, čo sa im páčilo, čo nie a aké je ich celkové hodnotenie skúsenosti.
Nepýtal som sa na potrebné otázky na pohovore.
Pohovor je najlepšia príležitosť spoznať spoločnosť bližšie, takže si určite pripravte otázky, ktoré chcete položiť zamestnancom. Tu je niekoľko príkladov:
- Opýtajte sa na proces vývoja (akým metodológiam sa venujú? prebieha kontrola kódu? aké stratégie vetvenia používajú?)
- Opýtajte sa na testovanie (aké testy sa vykonávajú? sú tu špeciálni ľudia, ktorí sa zaoberajú iba testovaním?)
- Opýtajte sa na firemnú kultúru (ako neformálne to je? existuje nejaká podpora pre juniorov?)
Nemám vyjasnenú kariérnu dráhu.
Bezpochyby cesta k tomu, aby ste sa stali skúseným vývojárom, sa značné kľukatí. Dnes je možnosť vyberať z mnohých jazykov, rámcov a nástrojov. Moja chyba na začiatku kariéry bola, že som sa pokúšal osvojiť si všetko. Neuveriteľne, viedlo to len k tomu, že som v ničom moc nepokročil. Najprv som sa chopil Javy, potom jQuery, pokračoval som k C#, odtiaľ k C++… Namiesto toho, aby som si vybral jeden jazyk a sústredil sa naň, som skákal od jedného k druhému, len podľa nálady. Môžem vás ubezpečiť, že to je extrémne neefektívna schéma učenia.
Dosiahnal by som lepšie výsledky a rýchlejšie by som napredoval v kariére, keby som sa hneď rozhodol pre svoju dráhu, teda pre konkrétnu sadu technológií, a zameral sa na ne. Napríklad, ak ste frontendový vývojár, osvojte si JavaScript, CSS/HTML a nejaký framework podľa vášho výberu. Ak sa venujete backendu, opäť platí, vezmite si jeden jazyk a dôkladne ho študujte. Nie je potrebné ovládať Python, Java aj C#.
Tak sa sústreďte, určte si smer a zostavte plán, ktorý vám umožní stať sa profesionálom vo zvolenej oblasti (tu je , ktorý vám s tým môže pomôcť).
Zabájal som sa do kódu
Takže pripravujete testovací projekt, aby ste zamestnávateľovi ukázali svoje schopnosti, alebo ste si už vzali svoju prvú úlohu v novej práci. Usilovne sa snažíte zapôsobiť. Ako najlepšie dosiahnuť výsledok? Pravdepodobne tým, že počas práce predvediete tú sofistikovanú techniku, ktorú ste sa nedávno naučili, že?
Nie. To je vážna chyba, ktorú som aj ja robil a častejšie, než by som chcel, ju vidím aj u iných juniorov. Je im veľmi vlastné vymýšľať koleso a hľadať zložité riešenia v snahe ohromiť svojimi vedomosťami.
Najlepší prístup k písaniu kódu je vyjadrený . Usilovaním sa o jednoduchosť získate zrozumiteľný kód, s ktorým sa bude v budúcnosti ľahko pracovať (vývojár, ktorý vás nahradí, to ocení).
Zabúdal som, že existuje život mimo kódu
Nikdy sa „neodpojiť“ - to je zlý zvyk, ktorý som si osvojil veľmi skoro. Na konci dňa, keď som sa chystal domov, som si pravidelne bral so sebou pracovný laptop a hodiny som pri ňom sedel, aby som dokončil úlohu alebo opravil chybu, aj keď oboje mohlo pokojne počkať do rána. Ako sa dalo očakávať, takýto režim spôsoboval stres a rýchlo som vyhorel.
Príčinou takého správania bola čiastočne moja snaha dosiahnuť všetko čo najrýchlejšie. A predsa by som si mal uvedomiť, že práca je dlhodobý proces a s výnimkou zriedkavých situácií môže byť nedokončená práca pokojne posunutá na zajtra. Je veľmi dôležité občas prepnúť a pamätať, že život nie je len o práci — sú tu priatelia, rodina, záľuby a zábavy. Samozrejme, ak vás baví sedieť až do úsvitu nad kódom — prosím! Ale keď to už nie je radosťou, zastavte sa a zamyslite sa, či by nebolo vhodné venovať sa niečomu inému. Predsa len nepracujeme posledný deň!
Vyhýbal som sa hovoriť: „Neviem“
Zaseknúť sa v procese riešenia nejakého problému alebo úlohy je bežná vec, s tým sa stretávajú aj najskúsenejší profesionáli. Keď som bol juniorský zamestnanec, hovoril som: „Neviem“ menej, než by som mal, a v tom som sa mýlil. Ak mi niekto z vedenia položil otázku a ja som nepoznal odpoveď, snažil som sa zamieňať fakty, namiesto toho, aby som to jednoducho uznal.
Mal som pocit, že ak poviem: „Neviem“, ľudia si pomyslia, že vôbec nerozumiem tomu, čo robím. V skutočnosti to tak nie je, neexistujú všeznalci. Preto ak sa vás niekto na niečo pýta, čo neviete, pokojne to povedzte. Takýto prístup má niekoľko výhod:
- Je to čestné — neuvádzate pýtajúceho do omylu
- Je šanca, že vám vysvetlia a vtedy sa naučíte niečo nové
- Vzbudzuje to rešpekt — nie každý je schopný uznať, že niečo nevie
Ponáhľal som sa napredovať
Určite ste počuli príslovie: „Skôr než sa naučíte bežať, naučte sa chodiť“. To je obzvlášť aktuálne vo svete webového programovania. Keď sa prvýkrát zamestnáte ako juniorský zamestnanec, máte chuť vziať býka za rohy a hneď sa pustiť do nejakého veľkého, zložitý projektu. Prebiehajú aj myšlienky o tom, ako rýchlo získať povýšenie na ďalšiu úroveň!
Ambície sú určite skvelé, ale na začiatku nikto nováčikovi nedá nič podobné. Na začiatku kariéry vám pravdepodobne prisúdia jednoduché úlohy a opravy chýb. Nie je to najzaujímavejšia činnosť na svete, ale inak to nejde. To vám umožní krok za krokom sa oboznámiť s kódom a naučiť sa všetky procesy. Zároveň vaše vedenie dostáva príležitosť sledovať, ako zapadáte do tímu a čo vám ide najlepšie.
Moja chyba spočívala v tom, že som sa rozčuľoval nad týmito drobnými úlohami, čo ma odvádzalo od práce. Dajte si čas, robte všetko, čo vám povedia, svedomite, a čoskoro dostanete niečo zaujímavejšie.
Nevstúpil som do komunity a nezískal som kontakty.
Vývojári majú skvelú komunitu: sú vždy pripravení pomôcť, poskytnúť spätnú väzbu a dokonca povzbudzovať. Programovanie je náročná záležitosť a občas veľmi vyčerpávajúca. Pre mňa by obdobie práce nováčika prešlo ľahšie, keby som od začiatku aktívne komunikoval s kolegami.
Kontakty v komunite sú navyše veľmi užitočné pre vlastné vzdelávanie. Môžete prispieť do projektov s otvoreným kódom, študovať cudzí kód a sledovať, ako programátori vedú projekt spoločnými silami. To všetko sú zručnosti, ktoré môžete využiť vo svojej hlavnej práci a ktoré vás postupom času urobia dobrým odborníkom.
Vyberte si komunity, ktoré vás zaujímajú – môžem odporučiť freeCodeCamp, CodeNewbies, 100DaysOfCode – a zapojte sa! Môžete tiež navštevovať miestne meetupy vo vašom meste (vyhľadajte na meetup.com).
Nakoniec, touto cestou si môžete vytvoriť profesionálne kontakty. V podstate sú kontakty len ľudia z vášho odvetvia, s ktorými komunikujete. Prečo je to potrebné? Nuž, povedzme, že niekedy budete chcieť zmeniť zamestnanie. Ak sa obrátite na svoje kontakty, niekto vám možno odporučí vhodnú pracovnú ponuku, alebo vás dokonca odporučí zamestnávateľovi. To vám poskytne významnú výhodu na pohovore – už ste mali niekoho, kto hovoril za vás, a nie ste len „ďalší životopis v hromade“.
Na tomto všetkom je koniec, ďakujem za pozornosť!
Zdroj: habr.com
