Jedna jednostavna osobina koja će unaprijediti vašu karijeru softvera

Softverski inženjering može biti apsolutno nezahvalan posao. Oh, naravno, ima svoje prednosti. Morate biti kreativni i rješavati probleme, a katkad postoji dobro napisana ljepota i elegancija koje je teško opisati onima koji ne govore jezik. Tamo gdje smo se nekad gotovo univerzalno predstavljali kao štreber u zaštitnim džepovima i naočale, Hollywood nas prikazuje kao elitne hakere koji mogu sjesti na nikad viđeni terminal i trenutno predvidjeti lozinke bilo kojoj vladi agencije u svijetu i pronađite način da kopirate i zatim izbrišite cijelu njihovu bazu podataka na USB pogonu za manje od 60 sekundi. Ja želim. Mislim da ne bih mogao hakirati ni svoj laptop, a kamoli tuđi, a nekoliko dana mi može trebati više od minute samo da kopiram neke Wordove dokumente na moj USB pogon.

Međutim, stvarnost biti programer je nešto manje seksi od naših holivudskih kolega. Naši šefovi i suradnici ne slute koliko je naš elegantni kôd. Ne razumiju da nas svaki dan traže da procijenimo koliko će vremena trebati za kodiranje značajki i ispravki o kojima do tog trenutka apsolutno nemamo pojma. Iskreno, često nas pitaju da nešto radimo od ljudi koji nemaju pojma o čemu nas čak traže! Naša se vrijednost često mjeri našom sposobnošću da izvučemo kod rekordno brzim tempom i spremnošću da radimo sulude količine sati radeći to. Nemogući rokovi su uobičajeni. Ravnoteža između posla i života često ne može postojati. I kao što svi znamo, jedno "aww sranje" može izbrisati sve "Atta-boy's". Na kraju vas je posao proizvoditi, a za razliku od prodajnih ljudi i rukovoditelja, i dalje od vas, ne znači vam često putovanje na Bahame, zlatni sat ili ček za podjelu dobiti. U stvari, naporniji rad obično završi samo na podizanju očekivanja od vas drugih, a kad vam nedostaje nova traka koju ste upravo postavili, izgledate kao da se gadite.

Svi gledamo ljude poput Stevea Jobsa, Billa Gatesa i Marka Zuckerberga i mislimo da bismo bili samo talentiraniji, kreativniji i pokrećeniji da bismo bili uspješniji na svojim poslovima. Zadržavamo se do jutarnjih sati, učimo najnovije nove okvire i tehnologije, provodimo čitave vikende preuređujući naše osnovne knjižnice u brže i učinkovitije, a u mnogim slučajevima na kraju zanemarujemo vlastite potrebe, prijatelje i obitelji. , i za što? Ne mogu vam govoriti koliko sam se puta savijao unatrag kako bih popravio svoj kod i prijavio se, samo da bih bio ispunjen frustracijama i pritužbama svojih šefova i suradnika, a ne kudosima i nagradama nadajući se.

"Zašto vam je trebalo toliko vremena da kodirate tu novu značajku? Zašto je QA pronašao greške u vašem kodu? Nisi nisi ni testirao ništa? I zašto ovdje u svoju aplikaciju ne koristimo ? "

Lako je postati obrambeni kada ljudi nazivaju naše bebe ružnom, a kad je naš naporan rad i požrtvovnost nagrađen negativnošću i nedostatkom uvažavanja. Čak i kad se radi o članovima tima, ponekad jednostavno ukazivanje na zanemareni problem u kodu ili traženje male dodatne značajke može dovesti do pogoršanog i ponekad optužujućeg odgovora od osobe koja ga je kodirala. To ipak nije osobni napad. To je samo posao. Kad widget ne "widge", a "foo" nedostaje "bar", nije kriv čovjek koji je pronašao problem, niti predstavlja problem sa stavom programera. Na koji način odgovaramo na pitanja i pritužbe drugih, naših suradnika i klijenata, imat će ogroman utjecaj na percepciju naše vrijednosti za tvrtku, i na kraju, koliko daleko možemo ići u karijeri.

Najuspješniji programeri imaju pravi stav. Sjajan stav koji će svakog dana nadmetati sjajne vještine, prepoznat će ga i nagrađivati ​​čak i većina ne-tehničkih ljudi.

Empatija je ključna

Ono što nas uistinu može zadržati u karijeri jest naš stav. Za ljude koji rješavaju probleme za život, pomislili biste da to shvatimo malo brže. Kao što smo ranije raspravljali, nikoga nije briga koliko sati radite ili koliko vam je elegantan ili maštovit kod. Razbijanje naših leđa kako bi se naškodio kôd vidi se kao „ono od čega se sastoje naš posao“, a nitko vas ne nagrađuje zbog onoga što biste trebali raditi.

Ono što drugi ljudi ipak primjećuju je kako reagirate na njihove potrebe i njihov trud. Ista premisa primjenjuje se bilo da govorimo o suradnicima, klijentima ili krajnjim korisnicima. Ako želite da vas ljudi prepoznaju kao sjajnog zaposlenika, prvo vas trebaju doživjeti i cijeniti kao osobu. Nikakva spretnost ili naporan rad nikada neće zamijeniti tu činjenicu. Vidio sam neke od najgorih programera koje sam ikad poznavao kako se dižu u redovima tvrtki, nadmašivši mnogo iskusnije i talentirane programere od njih samih, temeljene jednostavno na činjenici da se znaju slagati s drugima i kako igrati igra. Obično ti isti ljudi postaju vođe i menadžeri, dok se ostali programeri i dalje bore u svom osobnom „mjehuriću“, pitajući se gdje su pogriješili i zašto nisu dobili promocije za koje smatraju da su zaslužili.

Pogledajmo nekoliko tipičnih primjera kako bismo vidjeli kako pristupiti stvarima na takav način da će ljudi pozitivnije reagirati na ono što radimo i reći, s obzirom na to kako radimo i kažemo.

Šefe: Ne razumijem zašto su trebala tri dana samo dodati gumb na stranicu? Što ste radili sve to vrijeme? Joe je prošlog tjedna dodao novo dugme našoj drugoj aplikaciji, trebalo mu je 2 sekunde!
Loš odgovor: Joe radi na Windows aplikaciji i dodao je gumb na traci s gumbima koji je već zamišljen tako da mu lako dodaju gumbe! Ova je aplikacija web aplikacija i treba je pregledati i ispravno raditi na svim uređajima te se dinamički prilagoditi veličini i rotaciji zaslona te pretraživaču i promjenjivoj internacionalizaciji! Tražili ste taj gumb gdje nije bilo mjesta za tipku, pa sam morao redizajnirati većinu stranice oko tog zahtjeva, testirati sve u različitim preglednicima kako se izgled ne bi pokvario na malim uređajima, stvoriti novu uslugu, dodati nova logika, yada yada yada…

Pa zašto je ovo loš odgovor? Da, istina je da vaš šef vjerojatno nema pojma koliko „nevidljivog“ pozadinskog rada pretvara u „samo dodavanje gumba“, nema pojma koliko može tražiti testiranje prednjeg rada u usporedbi s poslovnim slojem, a ne znate da vi radila prekovremeno, čineći to i čini se da ne razumije da uspoređuju jabuke i naranče. Ali to nije njihov posao, zar ne? I u nekom trenutku svi ti detalji tek počinju zvučati kao izgovori i opravdanja, što je loše kad vaš šef već ispituje što se događa.

Ono što predlažem je "čitanje između redova" i gledanje stvari s gledišta vaših šefova. Vjerojatno vaš šef nikada u životu nije trebao pisati kôd, a zašto vam je trebalo toliko vremena, zapravo nije pitanje koje vam postavljaju. Ono što brine vašeg šefa je ispunjavanje njihovih rokova, zadovoljstvo klijenta, povećanje prodaje i usrećivanje vlastitog šefa. Baveći se brigom o tome što vaš šef brine, i vi ćete ih usrećiti. Koristite svoju empatiju za povezivanje s njima i njihovim osjećajima i rješavanje njihovih potreba i ciljeva. Na primjer…

Bolji odgovor: Mogu razumjeti zašto se osjećate frustrirano i cijenim što je dodavanje ove nove značajke za vas kritično. Važno je i za mene, i želim da učinim najbolje što mogu kako bi naš proizvod funkcionirao besprijekorno i kupci će biti oduševljeni. Pri dodavanju ove značajke bilo je puno složenosti i drago mi je što detaljno prelazim s vama ako želite. Trebalo je ipak malo više vremena kako bi bili sigurni da će gumb raditi besprijekorno na svim uređajima i u svim situacijama, te da ga temeljito testirate kako bi se smanjila QA. Ubuduće ću vam slati češća ažuriranja kako biste imali bolju predodžbu o tome gdje se nalazim i što radim.

Drugim riječima, ne pravite izgovore, kvragu, čak ni ne morate zapravo objašnjavati, što sve trebate učiniti, međutim, dati im do znanja da osjećate i razumijete njihovu bol, i usredotočeni su na stvari koje jesu usmjeren na. Ponuda prijedloga kako poboljšati stvari nikada ne škodi, i uklanja pritisak da sami smisle ideju.

QA osoba: Testirao sam taj novi gumb koji ste opet dodali i ovo je drugi put da sam ga ponovo otvorio jer još uvijek ne radi onako kako bih očekivao. Jeste li čitali moje bilješke u bug? Jeste li to uopće testirali prije prijave?
Loš odgovor: Da, pročitao sam vaše bilješke i slijedio sam sve korake koje ste naveli. Jednostavno nisam u stanju ponovno stvoriti problem i čak sam vam poslao video onoga što se događa na mom zaslonu. Jeste li vidjeli što sam vam poslao? Ako želite ovo ispraviti, morat ćete pronaći način da ga ponovo napravite tako da neće uspjeti i na mom stroju.

Problem s tim odgovorom je što je ljut i nekoristan. To izražava frustraciju s osobom, a zatim stavljate dodatni posao na njih da učine nešto za što već osjećaju da je vaša krivica i zbog vašeg neaktivnosti. Opet, najbolji je pristup "staviti se u njihove cipele" u svom odgovoru.

Bolji odgovor: Hvala vam na strpljenju i uhvaćanju svih pogrešaka koje sam možda napravio prije nego što ih klijent vidi. Budući da to ne mogu reproducirati u svom sustavu, možemo li umjesto toga planirati sastanak sutra ujutro? Donijet ću vam laptop na vaš stol, a vi ćete me voditi kroz ono što ide po zlu. Na taj način obojica možemo biti sigurni da razumijemo što nedostaje, a možda mogu riješiti problem tamo prije odlaska, tako da ćete znati da je već testiran i spreman za prijavu. Obavijestite me kakve krafne volite, a ja ću donijeti neke!

Rješenje je opet dobiti osobu ono što joj treba. QA osoba želi čistu zdravstvenu zaštitu na aplikaciji i frustrirana je onim što smatra nedostatkom komunikacije i razumijevanja. Ponuda da se javi i vidi problem iz prve ruke pokazuje predanost i inicijativu s vaše strane i pomaže im da se osjećaju kao da ozbiljno shvaćate njihov problem. U stvari, nude im se jedna pažnja i usluga, a nude se i rješenje koje bi trebalo jamčiti da će bug biti ispravno ispravljen kad se prijavi. Krofne bi mogle biti malo poljupca, ali jest zadivljujuće koliko će vas hrana odvesti u vezama.

Nekoliko općih savjeta koje treba slijediti kako bi se istakli i bili prepoznati na poslu

  • Nikada se nemojte ispričavati osim ako stvarno ne trebate ispraviti grešku. Umjesto toga, pokušajte pozitivno odgovoriti. Na primjer, umjesto: "Žao mi je što sam tako dugo trajala", pokušajte "Hvala vam što ste bili tako strpljivi".
  • Emulirajte vrhunske glumce. Potražite rock zvijezde na poslu, ljude koje svi vole i na koje računaju. Oni rade stvari onako kako drugi ljudi pozitivno reagiraju. Sprijatelji se s njima i oponaša način na koji djeluju i reagira na ljude. Smatrajte to „najboljom praksom“.
  • Uđite prije nego što većina ljudi ode, nakon što oni to urade. Premda to nije uvijek moguće, ljudi vas primjećuju kako odlazite i odlazite, a ako nisu tamo da to vide, to se nije dogodilo. Ako svi ostali uđu u 7 ujutro, a valcer oko 11, ljudi shvate da ste lijeni i neambiciozni. Ako većina ljudi radi do 18 sati, a vi preskočite oko 4, misle da ste željni otići i ne želite raditi kao i svi ostali. Izgledi su važni, zato ih budite svjesni.
  • Budite život stranke. Programeri nisu uvijek najsocijalnije životinje, ali pokretači i pretresi u društvu su. Ako želite da vas primijete, budite primjetni. Pozovite ljude svaki dan na ručak. Šaljite smiješne e-poruke. Na stol stavite zdjelu besplatnih bombona. Donesite bagele ujutro. Radite ove stvari tjedan dana i pazite koliko vas novih ljudi počinje primjećivati.
  • Komunicirajte rano i često. Ako svakodnevno Scrumujete, sjajno, ali ako niste, obavezno ažurirajte šefa, vodstvo i suradnike o tome na čemu radite i svim problemima s kojima se susrećete. Nema potrebe da budete previše složeni, samo brzo ažuriranje će svima dati do znanja da ste tamo i da radite na nečemu i da vas je briga.
  • Kad ne radite, ne razgovarajte o radu. Ako idete na ručak s grupom ili u hladnjak vode ili bilo gdje gdje se ljudi zbližavaju, što nije povezano s poslom, budite ranjiviji i osobno s njima. Pitajte o njihovim obiteljima, kako im je bilo na posljednjem odmoru, imaju li kakve planove za večer, bilo što što bi bilo zainteresirano za to tko su i što vole raditi.

Kad se sve kaže i učini, najbolja osoba za posao nije uvijek najbolji programer, to je zapravo osoba kojoj se ljudi odnose i najviše vjeruju. Jednom sam poznavao tipa koji je s tvrtkom bio mjesec dana. Bio je mlađi tip i nije baš dobar u svom poslu, a nedostajalo mu je iskustva. Svakog dana, međutim, svratio je iz ureda šefova kako bi razgovarao i ispričao joj vic ili dva. Jednog dana, kad je izašla da koristi zahod, skočio je na računalo i stavio fotografije Davida Hasselhoffa po cijelu pozadinu radne površine. Umjesto da je otpuštena zbog korištenja menadžerskog stroja, mislila je da je to pametno i smiješno. Nekoliko mjeseci kasnije on je postao vođa naše grupe, grupe u kojoj je većina ostalih ljudi imala 10+ više godina iskustva od njega. Ne kažem provaliti u vaše računalo šefova. Ono što predlažem je da je stav kralj i da ćete možda zapravo naći što će vas odvesti mnogo više u kompaniji nego vaše elegantno kodiranje.

Javite mi kako to ide!

Ako vam se sviđa ovaj članak, uzmite trenutak da mu date nekoliko pljeska i slijedite me da biste vidjeli više mojih postova!