Poate că ați văzut recent pe Twitter un fir de discuție care circulă despre „inginerii 10x”. Dacă nu ați văzut-o, o puteți citi în toată splendoarea ei:
Shekhar Kirani @Accel@skirani10x ingineri
Fondatori, dacă dați vreodată peste această rasă rară de ingineri, luați-i. Dacă aveți un inginer 10x ca parte a primilor dvs. câțiva ingineri, creșteți semnificativ șansele de succes ale startup-ului dvs.
OK, iată o întrebare dificilă.
Cum recunoști un inginer 10x?13:02 PM – 11 Jul 2019
Rezumatul este că, dacă nu vă potriviți cu o viziune super îngustă și stereotipică de a fi un dezvoltator, nu sunteți un „inginer 10x”.
Mulți vor spune că un „inginer 10x” nu există, deoarece a fi de 10 ori mai bun la ceva decât cineva/majoritatea oamenilor ar fi al naibii de greu. Chiar dacă persoana nu vrea să spună literalmente „10x”, tot încearcă să spună că există cineva semnificativ mai bun la orice.
Personal, urăsc termenul „inginer 10x”. La fel ca și „dezvoltator rockstar”, sunt descrieri și definiții proaste a ceea ce sunt marii dezvoltatori.
Ar fi lipsit de onestitate să spunem că toți dezvoltatorii sunt egali. Doar câteva minute de privit diferiți dezvoltatori pe Twitter, pot vedea deja mulți dezvoltatori care știu mult mai multe decât mine. Acestea fiind spuse, să vorbești despre acest „inginer de 10x” ca și cum ar putea crește semnificativ șansele ca afacerea ta să aibă succes este destul de ridicol.
Suficient despre doborârea acelui stereotip teribil al „inginerului de 10x”, haideți să vorbim despre lucrurile care fac cu adevărat mari dezvoltatori (aka adevăratul „inginer de 10x”).
- 1. Sunt inteligenți, dar își cunosc limitele
- 2. Puternici în mod independent, dar totuși faceți o echipă beton
- 3. Îi ajută pe alții cu probleme
- 4. Sunt amabili și înțelegători
- 5. Te provoacă (în modul corect)
- 6. Ei înțeleg că „noul strălucitor” nu este soluția pentru orice
- 7. Ei știu că nu contează când programezi și ce temă de editor folosești
- 8. Nu se străduiesc să facă ceva mai complex
- 9. Nu se gândesc la „eu” din „echipă”
- 10. Chiar vrei să lucrezi cu ei
1. Sunt inteligenți, dar își cunosc limitele
Dacă nu este vorba de o bază de cod trivial de mică, nu cunosc fiecare linie de cod care a intrat în producție. Sigur că pot rezolva o mulțime de probleme de unii singuri, dar știu când sunt blocați și știu când să ceară ajutor.
Nimic nu este greșit în a cere ajutor, indiferent de nivelul tău de calificare!
2. Puternici în mod independent, dar totuși faceți o echipă beton
Există momente pentru a programa independent și există momente pentru a programa în echipă. Acești programatori nu iau pur și simplu o sarcină și fug într-un colț pentru a lucra la ea în siloz față de toți ceilalți. Dezvoltarea dincolo de cea mai mică scală necesită o colaborare constantă cu o echipă – fie că este vorba de programare în perechi, revizuiri de cod, idei de respingere, ajutor la depanare etc.
Aceasta nu înseamnă că un mare dezvoltator nu se simte mai confortabil să lucreze singur la anumite sarcini, dar dezvoltarea la scară mare este practic imposibilă fără o colaborare puternică.
3. Îi ajută pe alții cu probleme
Ați cerut vreodată ajutorul unui coleg și acesta v-a ajutat? Felicitări, s-ar putea să fie un mare dezvoltator. S-ar putea să ne uităm la documentație sau chiar la Stack Overflow pentru ajutor, dar uneori chiar avem nevoie de ajutor de la cineva care cunoaște baza noastră de cod. Dacă sunteți un dezvoltator care știe ceva care ar putea ajuta un coleg, ajutați-l!
4. Sunt amabili și înțelegători
Să fii un dezvoltator grozav nu înseamnă să faci pe deșteptul, să-ți arăți intelectul, să ignori întâlnirile pentru că ești mai bun decât acei oameni. A fi un dezvoltator grozav înseamnă, de asemenea, să te descurci cu lucrurile non-tehnice. Dacă „ajuți” un coleg țipând la el și criticându-i codul, pur și simplu oprește-te.
5. Te provoacă (în modul corect)
Aceasta ar putea suna controversat, dar un mare dezvoltator nu îți va da răspunsurile tot timpul. Acest lucru ar putea suna în contradicție cu nr. 2 și nr. 3, cu toate acestea, acest lucru nu este menit să dețină ceva asupra ta. Un dezvoltator grozav este cineva care vă poate da doar atât cât să puteți rezolva singur problema. Aceste mici provocări vă ajută să deveniți un dezvoltator mai bun și vă permit să înțelegeți despre ce lucruri s-ar putea să aveți nevoie să învățați mai mult.
6. Ei înțeleg că „noul strălucitor” nu este soluția pentru orice
Nu vreau să spun că acești dezvoltatori nu verifică noi instrumente și limbaje (pot face ce vor în această privință), dar înțeleg că noile instrumente nu vor rezolva în mod magic toate problemele.
James Hickey 🇨🇦👨💻.
@jamesmh_devSuntem obsedați să învățăm despre mai multe instrumente și limbaje!
Dacă arhitectura ta este proastă, rezolvi probleme greșite, clientul tău nu înțelege când încerci să explici lucrurile… atunci instrumentele strălucitoare nu ajută.
Și acestea sunt fundamentale pentru succesul afacerii tale!18:54 PM – 27 Jun 2019
7. Ei știu că nu contează când programezi și ce temă de editor folosești
Lăsând la o parte stereotipurile despre programatori, de ce ar face diferența momentul în care programezi? Programează în toiul nopții dacă vrei/ți este permis de companie și nu o face dacă nu vrei. Singurul motiv pentru care timpul ar trebui să intre în joc este atunci când programezi de prea mult timp și nu ai dormit! Ora reală a zilei nu contează decât dacă afectează echipa ta (de exemplu, lucrezi la miezul nopții programând pentru a evita în mod intenționat pe toată lumea).
La fel și cu temele editorilor, de ce o temă întunecată te-ar face de fapt mai bun? Îți dau un indiciu, nu o face. Temele întunecate au rostul lor, dar cu siguranță nu este acesta.
8. Nu se străduiesc să facă ceva mai complex
Acest lucru ar putea fi evident, dar săptămâna trecută a mai fost un topic pe Twitter care vorbea despre faptul că a programa ceva complex ca și cum ar fi un lucru bun de făcut. Când a fost îngreunarea muncii noastre și a muncii colegilor noștri un lucru bun?
Există cu siguranță momente în care putem ajunge să programăm o soluție complexă ca și cum poate nu am înțelege (încă) pe deplin problema. Acest lucru se poate întâmpla la prima noastră încercare de programare a soluției, atunci îi auziți de obicei pe oameni vorbind despre refactorizarea codului sau despre faptul că nu sunt „mândri” de codul pe care l-au scris în săptămâna/luna/anul precedent.
9. Nu se gândesc la „eu” din „echipă”
Dacă nu au scris cu adevărat ei înșiși fiecare linie de cod sursă, de la compilator până la toată logica de business, ei știu că a fost un efort de echipă. Ei nu încearcă să ia lumina reflectoarelor de la nimeni altcineva din echipă – ei evidențiază toate contribuțiile care au făcut ca un proiect să fie un succes.
Când un proiect nu merge bine, ei nu merg mai departe și dau vina pe toată lumea. Proiectele de echipă eșuează ca echipă, nu ca individ (cu excepția cazului în care există intenții rău intenționate). Ei ajută întreaga echipă să învețe din greșeli și ajută la prevenirea lor să se întâmple din nou.
10. Chiar vrei să lucrezi cu ei
La sfârșitul zilei, acești mari dezvoltatori sunt oameni cu care chiar îți face plăcere să lucrezi. Apari la serviciu (sau de la distanță) și te bucuri că lucrezi cu o echipă atât de grozavă.
Dacă știi vreun dezvoltator care sună așa, spune-i cât de grozavi sunt și cât de fericit ești să lucrezi cu ei. 🙂
.