James, prima di scegliere un modello di ruolo (per qualsiasi campo), devi guardare ciò che ti piace. Se è Java, quale aspetto di Java ti interessa? Mobile computing, calcolo distribuito ecc.? Siediti e metti a matita ciò che ti piace come sviluppatore e dove vorresti essere tra 10 anni come ramificazione di ciò che fai. A questo punto, inizia a guardare le persone là fuori che lo stanno già facendo e lo fanno bene.
I miei modelli di ruolo sono cambiati nel tempo, ma ho sempre gravitato verso individui che sfidano il pensiero convenzionale, non accettano le cose così come sono e cercano costantemente miglioramenti (Richard Stallman ne è un esempio), non solo per il loro guadagno, ma anche per i loro colleghi. Devo ammettere che mi stanco delle persone che pronunciano "Spolksy dice ..." come se fosse il Vangelo. Joel Spolsky ha fatto alcune cose davvero positive nella sua carriera, ma non dovresti accettare ciecamente tutto ciò che è stato pronunciato da lui o da chiunque altro per quella materia. Niente è Vangelo, usa le informazioni come parte del tuo processo decisionale in contrapposizione alla tua religione.
Oltre ai modelli di ruolo positivi, dovresti avere modelli anti-ruolo; persone che non vuoi emulare. Nel mio caso, ho ascoltato gli sviluppatori in teleconferenze parlando ai clienti di JPanels, driver dei dispositivi, OEL, ecc. E la solita risposta è "Posso ottenerlo in inglese per favore?". Direi che non è una dimostrazione esemplare di come parlare ai clienti al telefono quando si reca al lavoro. Se non altro, ti mostra di vivere in un mondo piuttosto ristretto.