I migliori sviluppatori di software sono quelli che portano la squadra con loro. Non siamo più negli anni '80, dove qualcuno può sedersi e far saltare l'assemblaggio nel suo 6502 e fare un gioco da solo. È uno sport di squadra ora, non un evento solitario.
Quindi alcuni ovvi punti di forza sono l'eccellenza tecnica, l'essere in grado di guardare e apprezzare diversi modi di approcciare un problema, rimanere aggiornati su framework e paradigmi software, ecc. Questo è un po' l'ovvio.
Quello che separa veramente i grandi però è quanto sono grandi per la squadra. Revisioni utili del codice, aiutare gli altri a crescere, coaching/mentoring, investimento personale nei membri del team, fondamentalmente leadership.
Non è per dire che non ci sono grandi sviluppatori che non sono grandi leader, ma in generale, le persone migliori di qualsiasi ruolo sono quelle che elevano coloro che li circondano. In questo caso, quelli che fanno i migliori sviluppatori del team.
Lo sviluppatore 10x è quello che rende gli altri 5 sviluppatori 2x migliori. La squadra è cresciuta 10x senza nemmeno contare il codice del 10x.
Queste persone raramente continuano ad essere sviluppatori di software. Ci sono gli ingegneri illustri del mondo, ma più spesso che no, qualcuno che mostra quel livello di leadership viene portato in un percorso manageriale.
Non fraintendetemi, amo lavorare per loro, e hanno lavori molto importanti e significativi, ma suppongo che la "debolezza", se si può chiamare così, sarebbe lasciare il ruolo.