Vienas geriausių būdų tobulėti programavime yra per mokymąsi iš labiau patyrusių kolegų. Dažniausiai dirbant įmonėje patirties perėmimas vyksta per kodo peržiūrą ir vertinimą - feedbacką. Kritikos priėmimas psichologiškai yra gana sunkus procesas, tačiau mes turime išmokti jį prisijaukinti ir kryptingai naudoti tobulėjimui.

Rodyti savo kodą kitiems, ypač jei tai darome pirmą kartą, yra labai sunku. Programuotojai turi galbūt keistoką polinkį prisirišti prie savo kodo - visgi apie jį galvojome gal net keletą dienų, perrašėme tikrai ne vieną kartą ir labai džiaugiamės, jog jis tiesiog veikia. Sulaukti kritiškų komentarų nėra lengva.

Pamenu, mano pirmasis pull request vienoje įmonėje sulaukė nei daug, nei mažai komentarų - berods, 68. Didelė dalis jų buvo susijusi su stiliumi, kadangi natūralu, jog naujai atėjus dirbti į įmonę nežinai nerašytų taisyklių, kaip dalykai čia yra daromi. Tačiau nemaža dalis komentarų buvo ir apie tai, kaip galėčiau pagerinti ir pagražinti savo kodą. Kaip iš penkių eilučių galėčiau padaryti vieną arba kaip galėčiau užtikrinti, jog ir kiti kolegos, vėliau dirbsiantys su tuo kodu, žinotų, ką jis daro.

Kodėl taip sunku priimti feedbacką? Priežastis gana paprasta - niekam nepatinka būti kritikuojamam. Žmonės nėra mašinos, mes negalime dirbti ir gyventi racionaliai, todėl visur įsipina jausmai - noras būti gerbiamu ir vertinamu komandos nariu. O kai mus kritikuoja, mes natūraliai užimame gynybinę poziciją.

Taip pat labai sunku nepriimti feedbacko asmeniškai. Vertinama esi ne tu kaip asmuo, bet tavo padarytas darbas ir tiek. Viena didžiausių priežasčių, kodėl kai kurie kolegos gali vengti duoti feedbacką, yra baimė, jog kritika bus priimta asmeniškai, jog tu pagalvosi, kad kritikuojantis asmuo tavęs kažkodėl nemėgsta ir pan. Todėl yra labai svarbu iš pat pradžių sukurti tokius santykius su kolegomis, kurie leistų be baimės duoti konstruktyvų ir efektyvų feedbacką.

Dar viena komplikacija kodo feedbacko atveju yra tai, jog jis dažniausiai yra duodamas rašytine forma (komentarais githube). Dėl laiko stokos dažniausiai yra komentuojamos tik taisytinos vietos, o pozityvus grįžtamasis ryšys yra duodamas retai.

Rašant yra labai sunku perteikti emocijas, todėl sakinys “Čia nereikia šito kintamojo” gali pasirodyti labai šaltas. Tačiau žmogus tikriausiai galvojo kažkaip panašiau į “hmmm, įdomu, kodėl ji čia parašė šitą kintamąjį, matyt, pamiršo ištrinti”, tik tai nėra lengva išreikšti raštu.

Visa tai labai svarbu turėti omenyje, ypač tik pradedant programuotojos karjerą, nes būtent per konstruktyvią kritiką galime pasimokyti iš labiau patyrusių kolegų. Manau, jog net renkantis darbovietę labai svarbu atsižvelgti į tai, ar tau bus duodamas feedbackas. Tai aktualu ne tik juniorams, bet ir labiau pažengusiems programuotojams. Jeigu jau dirbi programuotoja, vadinasi, gali parašyti veikiantį kodą. Tačiau kodas turi ne tik veikti, bet ir būti lengvai palaikomas ir plečiamas, bei suprantamas kitiems kolegoms. Tai ypač svarbūs gero kodo kriterijai.

Kaip susikurti teigiamus santykius naujame darbe, kurie leistų tinkamai pateikti ir priimti feedbacką? Vieno būdo nėra, tačiau yra keletas nesudėtingų žingsnių, kurių gali imtis:

  1. Prie pull request komentarų padėkok kolegoms už konstruktyvų feedbacką. Tai parodys, jog tu jį vertini ir iš jo mokaisi. Peržiūrėti kitų kodą užtrunka nemažai laiko ir pastangų, tad tavo kolegos žinos, jog jie nešvaisto savo laiko, o padeda tau mokytis.

  2. Parašyk arba pasakyk jiems asmeniškai, jog tu esi atvira grįžtamajam ryšiui ir vertini jų pastangas peržiūrint tavo kodą.

Visgi, esu girdėjusi ir ne tokių gražių istorijų, kuomet ir kritikuojantis asmuo nesugeba pateikti feedbacko tinkama forma. Tai gali būti būdinga labai vyriškiems kolektyvams, juo labiau, jei įmonės valdymas ir kultūra leidžia kur kas nedraugiškesnes bendravimo formas.

Be abejo, nekonstruktyvi kritika gali pakirsti tavo ir taip jau ne tokį didelį pasitikėjimą savo jėgomis. Tokiu atveju apie tai reiktų kalbėtis su personalu ir vadovais. Na, o jei ir šitie dalykai nepadeda, galbūt visgi išeitis yra ieškotis kitos darbo vietos, kuri būtų palankesnė tavo augimui.

feedbackas

O kokia tavo patirtis su feedbacku? Ar jo gauni darbe? Ar jis pateikiamas tinkama forma? Pasidalink komentaruose!