avain tehokkaaseen ohjelmistokehitykseen on yhteistyö.
mikään ryhmä yksilöitä ei voi saavuttaa niin paljon kuin joukkue, joka pystyy todella työskentelemään yhdessä.
tämä tarkoittaa erilaisten persoonallisuustyyppien opettelemista, omien henkilökohtaisten vahvuuksien (ja heikkouksien) ymmärtämistä ja erimielisyyksien syrjäyttämistä yhteisen päämäärän saavuttamiseksi.
mutta sitä varten pitää olla jonkinlainen käsitys siitä, minkälaisten ihmisten kanssa työskentelee. Tarvitset empatiaa heidän kokemuksiaan kohtaan-ja käytännön tietoa siitä, miten he sopivat kokonaiseen tiimidynamiikkaan.
ohjelmistokehityksen maailmassa on joitain yleisiä kehittäjätyyppejä, joihin lähes varmasti törmää (jos ei ole jo törmännyt). Vaikka kukaan yksilö ei todellisuudessa ole karikatyyri, ymmärrys tiimisi jäsenten ajatuksista ja motivaatioista voi auttaa sinua oppimaan työskentelemään yhdessä tehokkaammin.
insinöörijohtajille on myös tärkeää tunnistaa tiimin jäsenten suhteelliset vahvuudet, kyvyt ja taipumukset. Näin voit tehokkaammin hallita yksilöitä ja myös miettiä strategisesti, miten ihmiset voivat menestyä.
katsotaan, mitkä ovat yleisimmät insinöörityypit ja millaisiin rooleihin he parhaiten sopivat osana tiimiä.
kaivamaan jokainen näistä Kehittäjä arkkityyppejä, voimme saada vahva ymmärrys rooli, että he parhaiten pelata joukkueen sisällä.
velho–tai tiimin asiantunteva veteraani–sopii todennäköisesti parhaiten johtamaan ydinprojekteja ja ohjaamaan nuorempia kehittäjiä. Vaikka he ovat yleensä hyvin lahjakkaita ja asiantuntevia, heidän vuosien kokemuksensa todennäköisesti johtaa heidät laiminlyömään pitkäaikaisia käytäntöjä ja välttämään muutoksia tai ”innovaatioita”.
spektrin toisessa päässä Infinite Optimizer todennäköisesti jahtaa jatkuvasti uusinta ja parasta tapaa tehdä asioita. Nämä löydöt voivat auttaa tiimiä tulemaan tehokkaammiksi ja tehokkaammiksi, mutta pyrkimys jatkuvaan parantamiseen voi tehdä heistä vähemmän luotettavia tällä välin.
suurin osa kehitystiimistä koostuu todennäköisesti ahkerista koodareista. Nämä insinöörit ovat luotettavia ja johdonmukaisia, mutta he eivät todennäköisesti esittele uusia ideoita tai mene pidemmälle varmistaakseen, että projekti on menestys.
supersankareina tunnetut Kehittäjät eroavat ahkerista koodareista siinä, että heille on ominaista voimakas tuottavuuden purkaus. Valitettavasti kukaan ei voi ylläpitää supersankaritason tuotosta loputtomiin, mikä tarkoittaa, että on tärkeää hallita aikaa ja energiaa. Avain on käyttää äärimmäisiä taipumuksia vain kriittisessä vaiheessa, kun se on eniten tarvitaan ja vähiten todennäköisesti vaarantaa laatua ja johdonmukaisuutta tiimin työtä.
jotkut kehittäjät työskentelevät parhaiten eristyksissä ja ilman suurempaa valvontaa tai johtamista. Pidämme näitä kehittäjiä eristäytyneinä taiteilijoina. Ne liittyvät usein nero-tason hallintaa, mutta voi liikaa ajatella tai vaikeuttaa hankkeita, jotka eivät vaadi intensiivistä, keskittynyt ajatus.
useimmat tiimit luottavat tiettyihin kehittäjiin, joilla on käsittämätön kyky löytää täydellinen ratkaisu ja täsmälleen oikea aika–kytkin. Nämä kehittäjät ovat yleensä uskomattoman luotettavia crunch aikaan, mutta voivat vain todella menestyä korkean paineen alla. Supersankareiden tavoin on tärkeää, että he ovat mukana projekteissa, joissa he voivat tuoda eniten arvoa.
lopuksi meillä on kehittäjiä, joita pidetään päänvaivana. Nämä ovat yleensä nuorempia insinöörejä, jotka voivat joskus tehdä virheitä tai hidastaa projekteja. Mutta kaikki ei ole menetetty. Oikealla hallinnalla ja ohjauksella ongelmallisiksi alkavat kehittäjät voivat usein kehittyä ja kasvaa kriittisiksi ja luotettaviksi tiimin jäseniksi.
mikään näistä arkkityypeistä ei välttämättä ole ”paras”. Itse asiassa suurin osa joukkueista tulee–ja luultavasti pitääkin-koostumaan melko tasaisesta sekoituksesta kautta linjan. Tämä tarkoittaa, että tiimeillä on kehittäjiä, jotka tarjoavat valikoiman täydentäviä vahvuuksia ja heikkouksia, jotka voidaan koota yhteen tehokkaalla johtajuudella.
olennaista on ymmärtää jokaisen kehittäjän yksilölliset tyylit ja tavat, jotta heidän panoksensa voidaan maksimoida ja tiimi–kokonaisuutena–voi tehdä parasta mahdollista työtä.
parhaat managerit tietävät ja ymmärtävät tämän.
sen sijaan, että asettaisi tiukkoja, yksipuolisia odotuksia kaikenlaisille kehittäjille, suuri johtaja arvioi jokaisen ihmisen yksilönä määrittääkseen, millaisissa olosuhteissa he menestyvät.
kun oikeat ihmiset ovat oikeissa rooleissa, jokainen pystyy suoriutumaan paremmin.