Vođenje tima programera: kako i čime ih motivirati? Drugi dio

Epigraf:
Muž, gledajući prljavu djecu, kaže ženi: dobro, hoćemo li ovo prati ili roditi nove?

Ispod presjeka nalazi se drugi dio članka voditelja našeg tima, kao i direktora razvoja proizvoda RAS Igora Marnata, o posebnostima motiviranja programera. Prvi dio članka možete pronaći ovdje - habr.com/ru/company/parallels/blog/452598

Vođenje tima programera: kako i čime ih motivirati? Drugi dio

U prvom dijelu članka dotaknuo sam se dvije niže razine Maslowljeve piramide: fiziološke potrebe, potrebe za sigurnošću, udobnošću i postojanošću i prešao na sljedeću, treću razinu, a to su:

III - Potreba za pripadanjem i ljubavlju

Vođenje tima programera: kako i čime ih motivirati? Drugi dio

Znao sam da se talijanska mafija zove “Cosa Nostra”, ali me se jako dojmilo kada sam saznao kako se “Cosa Nostra” prevodi. “Cosa Nostra” u prijevodu s talijanskog znači “Naš posao”. Izbor imena je vrlo uspješan za motivaciju (ostavimo zanimanje po strani, u ovom slučaju nas zanima samo motivacija). Čovjek obično želi biti dio tima, raditi neki veliki, zajednički, naš posao.

Velika važnost pridaje se zadovoljenju potrebe za pripadnošću i ljubavlju u vojsci, mornarici i svim većim paravojnim formacijama. I, kako vidimo, u mafiji. To je razumljivo, jer treba forsirati ljude koji imaju malo toga zajedničkog, koji inicijalno ne čine tim istomišljenika, koje okuplja regrutacija (ne dobrovoljno), koji imaju različite razine obrazovanja, različite osobne vrijednosti. , doslovno posvetiti svoje živote, uz smrtnu opasnost, nekom zajedničkom cilju , povjeriti svoj život suborcu.

To je vrlo jaka motivacija, većini ljudi je iznimno važno osjećati se kao da pripadaju nečem većem, znati da ste dio obitelji, države, tima. U vojsci u tu svrhu služe uniforme, razni rituali, parade, marševi, zastave i tako dalje. Otprilike isti faktori važni su za svaki tim. Važni su simboli, korporativni brend i korporativne boje, pribor i suveniri.

Važno je da značajni događaji imaju svoje vidljivo utjelovljenje s kojim se mogu povezati. Danas je uobičajeno da tvrtka ima vlastitu robu, jakne, majice itd. No, važno je istaknuti i tim unutar tvrtke. Često na temelju rezultata izdanja izdajemo majice koje dobivaju svi uključeni u izdavanje. Neka događanja, zajednička slavlja ili aktivnosti s cijelim timom još su jedan važan faktor motivacije.

Osim vanjskih atributa, još nekoliko faktora utječe na osjećaj pripadnosti timu.
Prvo, prisutnost zajedničkog cilja koji svi razumiju i dijele procjenu njegove važnosti. Programeri obično žele shvatiti da rade cool stvar, i da tu cool stvar rade zajedno, kao tim.
Drugo, tim mora imati komunikacijski prostor u kojem je cijeli tim prisutan i koji pripada samo njemu (npr. chat u messengeru, periodični timski sinkapi). Uz radna pitanja, neformalna komunikacija, ponekad rasprava o vanjskim događajima, svjetlo offtop - sve to stvara osjećaj zajednice i tima.
Treće, istaknuo bih uvođenje dobre inženjerske prakse unutar tima, želju za podizanjem standarda u odnosu na one koji su prihvaćeni u tvrtki. Implementacija najboljih pristupa prihvaćenih u industriji, prvo u timu, a zatim iu poduzeću u cjelini, daje timu priliku da se osjeća da je na neki način ispred drugih, prednjači, stvara se osjećaj pripadnosti cool ekipi.

Na osjećaj pripadnosti također utječe sudjelovanje tima u planiranju i upravljanju. Kada su članovi tima uključeni u raspravu o projektnim ciljevima, radnim planovima, timskim standardima i inženjerskim praksama te intervjuiranje novih zaposlenika, razvijaju osjećaj sudjelovanja, zajedničkog vlasništva i utjecaja na rad. Ljudi su puno spremniji provoditi odluke koje su sami donijeli i izrekli nego one koje predlažu drugi, čak i ako su praktički usklađene.

Rođendani, godišnjice, značajni događaji u životu kolega - zajednička pizza, mali poklon tima daju topli osjećaj uključenosti i zahvalnosti. U nekim tvrtkama uobičajeno je davati male spomen-znakove za 5, 10, 15 godina rada u tvrtki. S jedne strane, ne mislim da me to toliko motivira za nova postignuća. Ali, očito, gotovo svakome će biti drago što ga nisu zaboravili. Ovo je jedan od onih slučajeva kada odsutnost neke činjenice demotivira, a ne njezina prisutnost. Složite se, može biti prava šteta ako vas je LinkedIn ujutro podsjetio i čestitao vam 10. godišnjicu na radnom mjestu, a da vam niti jedan kolega iz tvrtke nije čestitao niti vas se sjetio.

Naravno, značajna točka je promjena u sastavu momčadi. Jasno je da čak i ako je dolazak ili odlazak nekoga iz tima unaprijed najavljen (primjerice, u biltenu tvrtke ili tima, ili na sastanku tima), to nikoga posebno ne motivira na nova postignuća. Ali ako jednog lijepog dana pored sebe vidite novu osobu, ili ne vidite staru, to može biti iznenađenje, a ako odete, sasvim neugodno. Ljudi ne bi trebali tiho nestajati. Pogotovo u raspodijeljenom timu. Pogotovo ako vaš posao ovisi o kolegi iz drugog ureda koji se iznenada pojavio i nestao. Takve trenutke svakako vrijedi posebno obavijestiti tim unaprijed.

Važan faktor, koji se na engleskom zove posjedovanje (doslovni prijevod "posjedovanja" ne odražava u potpunosti njegovo značenje). To nije osjećaj vlasništva, već osjećaj odgovornosti za svoj projekt, onaj osjećaj kada sebe emocionalno povezujete s proizvodom i proizvod sa sobom. Ovo otprilike odgovara molitvi marinca u filmu “Full Metal Jacket”: “Ovo je moja puška. Ima mnogo takvih pušaka, ali ova je moja. Moja puška je moj najbolji prijatelj. Ona je moj život. Moram ga naučiti posjedovati na isti način na koji posjedujem svoj život. Bez mene je moja puška beskorisna. Beskoristan sam bez svoje puške. Moram pravo pucati iz puške. Moram pucati točnije od neprijatelja koji me pokušava ubiti. Moram ga upucati prije nego on mene. Neka bude tako..."

Kada osoba dugo radi na proizvodu, ima priliku snositi punu odgovornost za njegovo stvaranje i razvoj, vidjeti kako radna stvar nastaje iz „ničega“, kako je ljudi koriste, javlja se taj snažan osjećaj. Proizvodni timovi koji dugo rade zajedno na jednom projektu obično su motiviraniji i kohezivniji od timova koji su okupljeni na kratko vrijeme i rade na pokretnoj traci, prelazeći s jednog projekta na drugi, bez pune odgovornosti za cijeli proizvod. , od početka do kraja.

IV. Potreba za priznanjem

Lijepa riječ također godi mački. Svi su motivirani prepoznavanjem važnosti obavljenog posla i njegovom pozitivnom ocjenom. Razgovarajte s programerima, dajte im povremene povratne informacije, proslavite dobro obavljen posao. Ako imate velik i distribuiran tim, periodični sastanci (oni koji se nazivaju jedan na jedan) savršeni su za to; ako je tim vrlo mali i radi zajedno lokalno, ova se prilika obično pruža bez posebnih sastanaka u kalendaru (iako periodički jedan je sve Još uvijek je potrebno, samo možete to činiti rjeđe). Ova je tema dobro pokrivena u podcastima za upravitelje na manager-tools.com.

Međutim, vrijedi imati na umu kulturne razlike. Neki pristupi poznati američkim kolegama neće uvijek funkcionirati s ruskim. Razina pristojnosti prihvaćena u svakodnevnoj komunikaciji u timovima u zapadnim zemljama programerima iz Rusije isprva se čini pretjeranom. Nešto izravnosti karakteristične za ruske kolege njihovi kolege iz drugih zemalja mogu doživjeti kao nepristojnost. Ovo je vrlo važno u komunikaciji u međunacionalnom timu, o tome je dosta napisano, voditelj takvog tima mora to zapamtiti.

Demonstracije značajki, gdje programeri pokazuju značajke razvijene tijekom sprinta, dobra su praksa za realizaciju ove potrebe. Osim što je ovo izvrsna prilika za pročišćavanje komunikacijskih kanala između timova, upoznavanje voditelja proizvoda i testera s novim značajkama, također je dobra prilika za programere da pokažu rezultate svog rada i naznače svoje autorstvo. Pa, i brusiti svoje govorničke vještine, naravno, što nikad nije štetno.

Značajan doprinos posebno istaknutih kolega bilo bi dobro proslaviti zahvalnicama, spomen obilježjima (barem lijepom riječju) na zajedničkim kolektivnim druženjima. Ljudi obično jako cijene takve certifikate i spomen-obilježja, nose ih sa sobom kada se sele i općenito se brinu o njima na sve moguće načine.

Za označavanje značajnijeg, dugoročnijeg doprinosa radu tima, stečenog iskustva i stručnosti često se koristi sustav ocjena (opet se može povući analogija sa sustavom vojnih činova u vojsci, koji osim osiguravanju podređenosti, također služi u tu svrhu). Često mladi programeri rade duplo više da dobiju nove zvijezde na svojim naramenicama (tj. prijeđu iz junior programera u full-time programera, itd.).

Presudno je poznavati očekivanja svojih ljudi. Neki će biti motivirani visokom ocjenom, mogućnošću da ih se zove, recimo, arhitekt, dok su drugi, naprotiv, ravnodušni prema ocjenama i titulama te će povećanje plaće smatrati znakom priznanja tvrtke . Komunicirajte s ljudima kako biste razumjeli što žele i kakva su im očekivanja.

Demonstracija priznanja, više razine povjerenja od strane tima, može se dati davanjem veće slobode djelovanja ili uključivanja u nova područja rada. Na primjer, nakon stjecanja određenog iskustva i postizanja određenih rezultata, programer, osim implementacije svojih značajki u skladu sa specifikacijom, može raditi na arhitekturi novih stvari. Ili se uključite u nova područja koja možda nisu izravno povezana s razvojem - automatizacija testiranja, implementacija najboljih inženjerskih praksi, pomoć u upravljanju izdanjima, govori na konferencijama itd.

V. Potreba za spoznajom i samoaktualizacijom.

Mnogi programeri usredotočeni su na različite vrste programskih aktivnosti u različitim fazama svog života. Neki ljudi vole raditi strojno učenje, razvijati nove modele podataka, čitati mnogo znanstvene literature za rad i stvarati nešto novo od nule. Drugi je bliži otklanjanju pogrešaka i podršci postojeće aplikacije, u kojoj trebate kopati duboko u postojeći kod, proučavati zapise, tragove stogova i mrežne captcha danima i tjednima, i gotovo ne pisati novi kod.

Oba procesa zahtijevaju veliki intelektualni napor, ali njihov praktični rezultat je različit. Vjeruje se da programeri nerado podržavaju postojeća rješenja, već su motivirani razvijati nova. Ima u tome zrnce mudrosti. S druge strane, najomotiviraniji i najjedinstveniji tim s kojim sam ikad radio bio je posvećen podršci postojećem proizvodu, pronalaženju i ispravljanju grešaka nakon što ih je tim za podršku kontaktirao. Dečki su doslovno živjeli za ovaj posao i spremno izlazili subotom i nedjeljom. Jednom smo se revno bavili još jednim hitnim i složenim problemom, bilo 31. prosinca navečer ili 1. siječnja poslijepodne.

Nekoliko je čimbenika pridonijelo ovoj visokoj razini motivacije. Prvo, bila je to tvrtka s velikim imenom u industriji, tim se povezao s njom (vidi "Potreba za afilijacijom"). Drugo, oni su bili zadnja granica, iza njih nije stajao nitko, u to vrijeme nije postojao proizvodni tim. Između njih i kupaca postojale su dvije razine podrške, ali ako je problem došao do njih, nije se imalo gdje povući, nitko nije stajao iza njih, cijela je korporacija bila na njima (četiri mlada programera). Treće, ova velika tvrtka imala je vrlo velike kupce (vlade zemalja, automobilske i zrakoplovne koncerna, itd.) i vrlo velike instalacije u nekoliko zemalja. Kao rezultat toga, uvijek složeni i zanimljivi problemi, jednostavni problemi rješavani su podrškom prethodnih razina. Četvrto, na motivaciju tima uvelike je utjecala profesionalna razina tima za podršku s kojim su komunicirali (bilo je vrlo iskusnih i tehnički sposobnih inženjera), a uvijek smo bili uvjereni u kvalitetu podataka koje su pripremali, analize koje su provodili itd. Peto, i mislim da je to najvažnije - momčad je bila jako mlada, svi momci su bili na početku karijere. Zanimalo ih je proučavanje velikog i složenog proizvoda, rješavanje ozbiljnih problema koji su im bili novi u novom okruženju, nastojali su profesionalno parirati razini okolnih timova, problema i kupaca. Projekt se pokazao kao izvrsna škola, svi su kasnije napravili dobru karijeru u tvrtki i postali tehnički lideri i viši menadžeri, jedan od dečki je sada tehnički menadžer u Amazon Web Services, drugi je s vremenom prešao u Google, a svi od njih se još uvijek s toplinom sjeća ovog projekta.

Da se tim sastoji od programera s 15-20 godina iskustva iza sebe, motivacija bi bila drugačija. Dob i iskustvo naravno nisu 100% odlučujući čimbenici, sve ovisi o strukturi motivacije. U ovom konkretnom slučaju želja za znanjem i rastom mladih programera dala je izvrsne rezultate.

Općenito, kao što smo već nekoliko puta spomenuli, morate poznavati očekivanja svojih programera, razumjeti tko bi od njih želio proširiti ili promijeniti svoje područje djelovanja i uzeti u obzir ta očekivanja.

Izvan Maslowljeve piramide: vidljivost rezultata, gamifikacija i natjecanje, bez sranja

Postoje još tri važne točke u vezi s motivacijom programera koje svakako treba spomenuti, ali njihovo uvlačenje u Maslowljev model potreba bilo bi previše umjetno.

Prvi je vidljivost i blizina rezultata.

Razvoj softvera obično je maraton. Rezultati istraživanja i razvoja postaju vidljivi nakon nekoliko mjeseci, ponekad i godina. Teško je ići do cilja koji je daleko iza horizonta, količina posla je zastrašujuća, cilj je dalek, nejasan i nevidljiv, „noć je mračna i puna strahota“. Bolje je put do njega razbiti na dijelove, napraviti stazu do najbližeg stabla koje je vidljivo, dostupno, jasnih obrisa, a nije daleko od nas – i ići do ovog bliskog cilja. Želimo se potruditi nekoliko dana ili tjedana, dobiti i procijeniti rezultat, pa krenuti dalje. Stoga je vrijedno razdvojiti rad na male dijelove (sprintovi u agileu dobro služe u tu svrhu). Dio posla smo završili – snimili, odahnuli, raspravili, krive kaznili, nevine nagradili – možemo započeti sljedeći ciklus.

Ta je motivacija u određenoj mjeri slična onoj koju igrači doživljavaju kada dovrše računalne igre: povremeno dobivaju medalje, bodove, bonuse dok dovrše svaku razinu; to se može nazvati "dopaminska motivacija".

Pritom je doslovno bitna vidljivost rezultata. Zatvorena značajka na popisu trebala bi postati zelena. Ako je kod napisan, testiran, objavljen, ali nema promjene u vizualnom statusu vidljivom programeru, on će se osjećati nepotpunim, neće imati osjećaj dovršenosti. U jednom od timova u našem sustavu kontrole verzija, svaka je zakrpa prošla kroz tri uzastopne faze - građenje je sastavljeno i testovi su prošli, zakrpa je prošla pregled koda, zakrpa je spojena. Svaka faza bila je vizualno označena zelenom kvačicom ili crvenim križićem. Jednom se jedan od programera požalio da pregled koda traje predugo, kolege su morali ubrzati, zakrpe su visile nekoliko dana. Pitao sam, što to zapravo mijenja za njega? Uostalom, kada je kod napisan, build sastavljen i testovi su prošli, ne treba obraćati pozornost na poslanu zakrpu ako nema komentara. Kolege će ga sami pregledati i odobriti (ako opet nema komentara). Odgovorio je: "Igore, želim što prije dobiti svoje tri zelene kvačice."

Druga točka je gamifikacija i konkurencija.

Prilikom razvoja jednog od proizvoda, naš inženjerski tim imao je cilj zauzeti istaknutu poziciju u zajednici jednog od proizvoda otvorenog koda, ući u top-3. U to vrijeme nije postojao objektivan način za procjenu nečije vidljivosti u zajednici; svaka od velikih kompanija sudionica mogla je tvrditi (i povremeno je tvrdila) da je pridonijela broj jedan, ali nije bilo pravog načina za usporedbu doprinosa sudionika. međusobno, kako bi procijenili njegovu dinamiku u vremenu. Sukladno tome, nije bilo načina da se postavi cilj za tim koji bi se mogao mjeriti u nekim papigama, procijeniti stupanj njegovog postignuća itd. Kako bismo riješili ovaj problem, naš tim je razvio alat za mjerenje i vizualizaciju doprinosa tvrtki i pojedinačnih suradnika www.stackalytics.com. S motivacijske strane ispala je to samo bomba. Nisu samo inženjeri i timovi stalno pratili svoj napredak i napredak svojih kolega i natjecatelja. Top menadžment naše tvrtke i svi veliki konkurenti također su započeli svoj dan sa stackalyticsom. Sve je postalo vrlo transparentno i vizualno, svatko je mogao pažljivo pratiti svoj napredak, uspoređivati ​​se s kolegama itd. Inženjerima, menadžerima i timovima postalo je praktično i jednostavno postavljati ciljeve.

Važna točka koja se javlja kod implementacije bilo kojeg sustava kvantitativnih metrika jest da čim ih implementirate, sustav automatski nastoji dati prioritet postizanju tih kvantitativnih metrika, nauštrb kvalitativnih. Na primjer, broj dovršenih pregleda koda koristi se kao jedna od metrika. Očito, pregled koda može se obaviti na različite načine, možete provesti nekoliko sati na temeljitom pregledu i provjeri složene zakrpe s provjeravanjem testova, pokretanjem na svom stolu, provjerom dokumentacije i dobiti plus jednu recenziju u svojoj karmi, ili naslijepo kliknite nekoliko desetaka zakrpa u par minuta, svakoj dajte +1 i dobit ćete plus dvadeset u karmi. Bilo je komičnih slučajeva kada su inženjeri tako brzo klikali na zakrpe da su davali +1 automatskim zakrpama iz CI sustava. Kako smo se kasnije šalili, "idi, idi, Jenkins." U slučaju komitiranja, također je bilo mnogo ljudi koji su prolazili kroz kod pomoću alata za formatiranje koda, uređivali komentare, mijenjali točke u zarezima i tako pumpali svoju karmu. Nositi se s tim vrlo je jednostavno: koristimo se zdravim razumom i, osim kvantitativnih, koristimo i one bitne, kvalitativne. Stupanj korištenja rezultata rada tima, broj vanjskih suradnika, razina pokrivenosti testom, stabilnost modula i cijelog proizvoda, rezultati testiranja razmjera i performansi, broj inženjera koji su dobili core reviewer rame trake, činjenica da su projekti prihvaćeni u zajednicu temeljnih projekata, usklađenost s kriterijima različitih faza inženjerskog procesa - svi ti i mnogi drugi čimbenici moraju se procijeniti zajedno s jednostavnim kvantitativnim mjerilima.

I na kraju, treća točka – Bez sranja.

Programeri su vrlo pametni ljudi i izuzetno logični u svom poslu. Dnevno provode 8-10 sati gradeći duge i složene logičke lance, pa u njima u hodu vide ranjivosti. Kada nešto rade, oni, kao i svi drugi, žele razumjeti zašto to rade, što će se promijeniti na bolje. Iznimno je važno da su ciljevi koje postavljate svom timu pošteni i realni. Pokušaj prodati lošu ideju programerskom timu je loša ideja. Ideja je loša ako sami u nju ne vjerujete ili, u ekstremnim slučajevima, nemate unutarnje stanje neslaganja i obveze (ne slažem se, ali ću to učiniti). Jednom smo u poduzeću implementirali motivacijski sustav čiji je jedan od elemenata bio elektronički sustav povratne informacije. Uložili su puno novca, odveli ljude u Ameriku na usavršavanje, općenito, uložili su maksimalno. Jednom je u razgovoru nakon treninga jedan od menadžera rekao svojim podređenima: “Ideja nije loša, izgleda da će uspjeti. Ja vam osobno neću dati elektroničku povratnu informaciju, ali vi je dajte svojim ljudima i zahtijevajte od njih.” To je to, dalje se ništa nije moglo implementirati. Ideja je, naravno, završila ničim.

Izvor: www.habr.com

Dodajte komentar