Ali je inženir 10X mit?
Dejstvo je, da so nekateri ljudje boljši pri programiranju kot drugi.
Na prejšnjem delovnem mestu v tehnološkem podjetju sem bil navdušen nad tem, kako nekateri ljudje v moji ekipi vedo, kako narediti vse.
Tudi med študijem na univerzi, ko sem sodeloval na hackathonih in pripravništvu, sem lahko spoznal nekaj zelo nadarjenih razvijalcev, od katerih sem se veliko naučil.
V tem članku bom pregledal nekaj napačnih predstav, ki jih imajo ljudje o inženirju 10X. Potem ko pogledamo, kaj je inženir 10X ne, pregledali bomo nekaj najboljših nasvetov, ki vam jih lahko dam, da tudi sami postanete 10X inženir.
Kaj je 10X inženir?
Mnogi razvijalci bi se prepirali o dejanski definiciji inženirja 10X. Toda zaradi jasnosti poskusimo zdaj definirati preprosto definicijo.
Inženir 10X je razvijalec programske opreme, ki je lahko tako produktiven kot deset njegovih vrstnikov.
Zamisel o inženirju 10X je morda nastala prej, kot si mislite.
A raziskovalna naloga iz leta 1968, imenovano »Raziskovalne, eksperimentalne študije, ki primerjajo uspešnost spletnega in nespletnega programiranja«, je prvič predlagal idejo, da so nekateri najboljši programerji za red velikosti boljši od najslabših programerjev. Čeprav to danes ni dogovorjena definicija, se je zamisel o inženirju 10X kmalu razširila izven akademskih krogov.
Nekaj let pozneje je klasična knjiga The Mitski človek-mesec nadalje ponazoril idejo inženirja 10X. Avtor Fred Brooks to predlaga Razvoj programske opreme ekipe bi lahko bile strukturirane kot kirurške ekipe.
V tej ekipi bi imeli glavnega programerja ali "kirurga" s podpornimi programerji ali "medicinskimi sestrami".
Čeprav je to analogijo enostavno razumeti, verjamem, da je nekoliko poenostavljena in zastarela, če jo uporabimo za trenutno stanje razvoja programske opreme.
Timska dinamika v tehnični ekipi se zelo razlikuje od kirurške. Ta zamisel o eni sami osebi, ki opravi večino dela ali samo najzahtevnejše delo, je napačno opredelila, kaj bi po mojem mnenju moral biti inženir 10X.
Pogoste napačne predstave
Ker se je ideja inženirja 10X razširila po vsej tehnološki sferi, si večina menedžerjev pogosto napačno razlaga, kaj mislimo z besedo "10X".
Pogosta napačna predstava je, da inženirji 10X proizvedejo desetkrat več kode kot njihovi kolegi. To preprosto ni res.
Medtem ko bi lahko inženir 10X izvedljivo proizvedel več kode kot njegovi kolegi, količina ni pravo merilo. Predstavljajte si programerja, ki porabi tisoč vrstic kode za izvedbo tega, kar bi lahko naredili v manj kot stotih. Podobno 10X inženir ne kodira desetkrat hitreje!
Druga napačna predstava o inženirjih 10X je, da so odlični zgolj zaradi svojega znanja kodiranja. Še enkrat, to je še en primer gledanja na napačno metriko.
Inženir 10X je tako dragocen zaradi tega, ker svoji ekipi in organizaciji doda desetkratno vrednost. Inženir 10X je nepogrešljiv zaradi svoje sposobnosti, da uporabi svoje znanje kodiranja in ga uskladi s potrebami podjetja.
Vodje bi morali iskati inženirje, ki znajo rešiti probleme in dobro sodelovati z drugimi. Poleg znanja kodiranja bi morali biti inženirji 10X sposobni dvigniti delo vseh okoli sebe.
Pet načinov, kako postati 10x inženir
Ta razdelek je za vas, če ste vodja, ki išče naslednjo zaposlitev, ali preprosto inženir, ki si želi postati 10X inženir.
Tukaj je nekaj ključnih navad in lastnosti inženirja 10X:
Vedo, kako kar najbolje izkoristiti svoj tehnološki nabor
Poznavanje vaših orodij je morda najbolj očiten nasvet, ki vam ga lahko dam. Vendar lahko številni razvijalci še vedno izboljšajo svoj potek dela tako, da se naučijo učinkovitega dela.
Večina desetih inženirjev, s katerimi sem delal, se dobro znajde na terminalu. Čeprav je to za začetnike morda nekoliko učna krivulja, vam bo razumevanje, kako narediti lupinske ukaze sproti, dolgoročno pomagalo veliko hitreje opravljati svoje delo.
10x inženirjem lahko koristi tudi to, da so nekoliko leni. Naj vam povem, kaj mislim.
Predstavljajte si, da morate vsak dan ročno izvajati vrsto ukazov, da potisnete nove zaveze v proizvodnjo. Inženir 10x se mora izogibati ponavljajočim se nalogam. Dodatno se trudijo avtomatizirati čim večji del dneva.
Tudi najboljši inženirji bi morali razmišljati dolgoročno. Če delate za startup, vas bo morda zamikalo, da se osredotočite na hitre in enostavne rešitve. Vendar se te rešitve morda ne bodo povečale.
Nikoli se ne nehajo učiti
Odličen razvijalec se nikoli ne neha učiti. Najboljši inženirji si med napornim delovnikom najdejo čas za preizkušanje novih konceptov, jezikov in okvirov, ki jih lahko poskusijo uporabiti pri svojem delu.
Inženir 10x bi moral ohraniti zdrav občutek radovednosti. Pogosto se sprašujejo: "Ali je to mogoče narediti bolje?" ali "Ali obstaja preprostejši ali učinkovitejši način za rešitev te težave."
Tako mora 10x inženir obvladati umetnost učenja samega. Naučiti se učiti je najboljši način, da ostanete na površju v hitrem okolju.
Vedo, kako najbolje preživeti svoj čas
Odličen programski inženir je odličen pri sprejemanju odločitev, zlasti o tem, kaj bo počel s svojim časom.
Inženirji 10X redko potrebujejo več ur kot povprečen inženir. Inženirji bi morali vedeti, kdaj se odreči določenim zahtevam in jim reči ne. Vedeti morajo, katere naloge morajo opraviti sami in katere naloge prenesti.
Učinkoviti inženirji bi morali obvladati, kako ugotoviti, ali je nalogo vredno opraviti hitro. En miselni model, ki ga je treba imeti v mislih, je Paretovo načelo.
Načelo pravi, da 80 % vrednosti vašega dela izvira iz 20 % vašega truda. Z drugimi besedami, vse naloge niso enake.
Iščejo ustrezno mentorstvo
Odličen inženir se lahko veliko nauči od izkušenega veterana v industriji. Inženirji 10X pogosto iščejo mentorstvo pri delu in zunaj njega, da bi razširili svoje znanje.
Podobno bo inženirjem 10X koristilo, če bodo prevzeli vlogo mentorja svojim soigralcem. Celotna ekipa je povzdignjena, ker je odprta za njegove soigralce začetnike.
Razumejo posel
Preprosto povedano, programsko inženirstvo je le način, kako računalniki rešijo problem iz resničnega sveta. S tem v mislih mora učinkovit inženir postati strokovnjak za problem, ki ga poskuša rešiti.
Kot inženir je pametno, da si prizadevate za razumevanje podjetja ali panoge, katere del ste. Inženir 10x bi moral aktivno sodelovati na sestankih z drugimi oddelki.
Če se inženir potrudi razumeti, kaj počnejo drugi oddelki v kontekstu podjetja, bo postal učinkovit komunikator. Učinkovita komunikacija bo pomagala preprečiti, da bi vaša ekipa napačno razumela poslovne zahteve in specifikacije projekta.
zaključek
Upajmo, da imate zdaj jasnejšo sliko o tem, kako izgleda inženir 10X. Prav tako bi morali razumeti, kaj inženir 10X ni.
Zgornji nasvet je seveda le splošna smernica, ki se lahko uporablja za katero koli vlogo inženirja programske opreme. Če želite izvedeti, kako ste lahko najboljši DevOps inženir, full stack razvijalec ali podatkovni znanstvenik, je vaša najboljša možnost, da poiščete priložnosti za učenje in gradnjo.
Pomislite, ali je vaš trenutni položaj dobro učno okolje. Morda želite porabiti več časa za stranske projekte, ki vam bodo omogočili raziskovanje tehnologij zunaj vašega trenutnega tehnološkega sklopa. To je le nekaj nasvetov, ki jih lahko upoštevate, da pridobite prednost na področju tehnologije.
Kateri nasvet je po vašem mnenju najbolj koristen za ambiciozne inženirje?
Pustite Odgovori