Važna napomena - nameravam da delim lično iskustvo i mišljenje - ono što ja predlažem možda nije najlakši, a sigurno nije jedini način da junior postane “senior”. Takođe, svestan sam da je ova titula često arbitrarna i situaciona - “seniorat” koji ja spominjem se više odnosi na titulu “majstor zanata” u nekoj uskoj specijalizaciji nego na stavku u Curriculum Vitae pdf-u.
Cilj
Pa, da počnemo. Svaki kompleksniji problem može da deluje nerešivo ukoliko nemamo definisan cilj, i ukoliko zatim ne zamislimo etape. Pre nego što se koncentrišemo na etape, razmislimo o cilju. Senior developer je, u očima nekog ko tek počinje svoje IT putešestvije, često nedokučiva misterija. Objašnjenja su u rasponu od “ma on nema život” do “ma on to radi već 100 godina”. Ovo umeju biti validne primedbe, ali nas zanima tačka gde neko i zvanično postaje “senjor”, jer baš tu tačku želimo da odredimo kao cilj. Pravi odgovor je, u Dizni princeza stilu, da je suština u “putu do cilja”, i da se to dešava postepeno i često postanemo “senior” pre nego što nam to neko i zvanično kaže i digne platu za 100 evra. Kao što sam spomenuo u uvodu, za mene je ta titula “seniora” ravna tituli “majstor zanata”.
Kako onda da postanem “majstor zanata”?
U zavisnosti od tehnologije koju koristimo (a moramo naravno prvo pokazati neku sklonost ka nekoj od dostupnih tehnologija/programskih jezika/problematika), grane našeg puta su drugačije, pa neću ulaziti u listu alata, literaturu i skup kućnih projekata koji se moraju proći da se stekne potrebno znanje. Iako nije endemično za IT sferu, definitivno je nešto što obeležava posao u IT branši - bujica novih tehnologija, rešenja i trendova, koja kao da nema nameru da stane. Ono što obeležava majstora u ovakvom okruženju, kako su ih 2000-2010 zvali na nekim freelance sajtovima - nindžu - je njegova snalažljivost. Glavni pomak u programiranju je u suštini uvek korak nazad. Dok neko sa manje iskustva pokušava da ovlada jednim instrumentom / detaljem implementacije, iskusniji kolega je to već radio pre par godina sa nekim drugim alatom, i ume da prenese principe na novo okruženje. Ova sklonost ka “tajnama” funkcionisanja nekog sistema, ovo dublje razumevanje, je to što pravi glavnu razliku između početnika i - majstora.
Ali mene taj deo i ne zanima...
Često sveže programere ne zanimaju stvari ispod haube, odnosno, zadovolje se sa time da stvari samo “rade”. Nakon što se namuče sa nekom implementacijom, žele da se okanu tog problema jer ga vezuju za pretrpljenu frustraciju. Lagao bih kada bih rekao da se ne zadovoljim takvim ishodom i češće nego što želim da priznam, ali do problema dolazi kada vas kolega prekine sa “e, dođi da vidiš nešto”. Gde “dubinsko” znanje zapravo nalazi svoju primenu su situacije gde nemate (odmah) pun kontekst, radite sa tuđom igračkom i morate da radite sa apstrakcijama. Kriptična greška koju vas dvoje gledate na ekranu - simbolično “majstore, čuje mi se takav i takav zvuk kad menjam brzinu” su situacije gde više niste junior koji pokušava da uradi svoj zadatak što samostalnije, nego neko ko prihvata odgovornost (i valjda i zasluge) za uspehe tima sa kojim radi. Pored potrebnog znanja (koje se možda stekne baš i tek tim dobrovoljnim rešavanjem “tuđih” problema), taj momenat odgovornosti koji sam opisao je preloman.
Dogovornost i odgovornost
Nešto što dozvoljava “rupu” u sistemu je vaša sposobnost da generišete vrednost timu ne oslanjajući se isključivo na suvo znanje. Možda vam dubinsko znanje nedostaje, ali, znanje je nešto što se može vremenom nadomestiti - ono što krasi valjanog “majstora” je i mogućnost dogovora i njegova tendencija da taj dogovor ispoštuje. Ono u čemu se treba popraviti (uz vežbu) je procena i analiza posla. Valjan majstor može sa manje ili više uspeha da, nakon što mu se problem opiše, raščlani problem na zadatke i proceni koliko je potrebno da se svaki taj zadatak izvrši. Tako sa našim nadređenim, nalogodavcem ili klijentom postižemo dogovor, koji, kada se ispoštuje gradi reputaciju i otvara vrata napretka u našem ekosistemu.
Istina će vas šokirati (FOTO) (VIDEO)
Na kraju dana - ako izučite svoje polje rada po dubini (i po potrebi, po širini), ako umete da iskomunicirate kako nekom problemu treba pristupiti uz neki okviran plan, i ako uz sve to budete “ok čovek za saradnju”, sva vrata će vam biti otvorena, a usput će vam poslodavac (ako ga imate, i ako ume da vas ceni), nadenuti svakojake titule i ispratiti to u kešu. Ono što je možda ključno u ovom procesu je, volja programera.
Vrlo malo njih “izraste” u seniora organično. Naravno da je moguće sesti u jednu firmu, guliti krompire i probuditi se jednog dana posle 8 ili 9 godina kao “kolega koji zna većinu o većini stvari”, te je i po godinama i po sedoj bradi “senior”, ali velika većina programera, postigne seniorat svojom voljom. Niko vas neće vući za rukav, pogotovo u ovako živom tržištu, da baš vi sednete i izučite svoj zanat do kraja. Često će se obe strane zadovoljiti sa “eto radi” i takvo površno znanje, bez ulaženja u sitnice, u principe, u “filozofiju” arhitekture nije prenosivo sa radnog mesta na radno mesto. To znači da se isto tako možete jednog dana probuditi kao kolega u firmi koja je propala, i koji je ostao bez posla i ne ume da položi tehnički intervju za posao u istom platnom opsegu koji je do sad imao. Još jedna “neprijatna istina” je da ćete teško naplatiti svoje znanje od jednog klijenta / firme. Jako su retki poslodavci koji vas toliko cene da će vam davati povišicu i bez da ih pitate. Iskreno za 10 godina u branši, svež mi je u sećanju samo jedan takav poslodavac (ako čitate, znate ko ste). Gde stvarno naplatite znanje je promena posla - na 2 do 4 godine.
Opet, postoje stvari koje novac ne može kupiti i svakom poslu treba prisupiti kao da ćete tamo da se penzionišete - a) nikad ne znate kada će to biti istina, b) to je jedini način da se domognete odgovornosti i znanja od kojih se napreduje. Ali ono što hoću da kažem je, ne da treba biti alavi psihopata (podvojena ličnost koja je spremna da napusti posao za 30 dana čim se ukaže bolja prilika), nego da imate svest o svojoj karijeri kao nečemu što posedujete i kontrolišete neovisno od trenutka. Dobiti određenu titulu na poslu i staviti je na linkedin je lepo, ali je poenta koliko vaše znanje vredi. Koliko je prenosivo ukoliko morate da promenite posao.
Ako zapamtite jednu stvar iz ovog članka duže od 48 sati - voleo bih da to bude činjenica da, ukoliko želite da napredujete (u kAriJeRi) da morate sami da unapredite svoje znanje. Lepo je ako firma nudi “dinamično okruženje” i “budžet za edukaciju”, ali ništa ne zamenjuje čvrstu volju i trenje između guzova i stolice uloženo u svestan napredak.
HelloWorld organizuje i vebinar na ovu temu, gde ću ja biti jedan od sagovornika. Vebinar se održava 16.12. u 18h putem Zoom platforme. Učešće je besplatno i sve što treba da uradiš je da se prijaviš na sledećem linku.
1 komentar