Devo essere un programmatore hardcore per avere successo? [chiuso]

2

Conosco qualcuno che è un ottimo programmatore con un buon lavoro di sviluppo software e reddito. Tuttavia, trascorre praticamente tutto il suo tempo sul suo computer. Che si tratti di lavoro o dei suoi progetti, è sempre in programmazione o apprende nuove tecniche di programmazione ecc.

Mi chiedo, devo essere così per essere un buon programmatore? Mi piace molto programmare e mi diverto a imparare cose nuove, ma semplicemente non spendo tanto tempo a fare quelle cose come fa lui. Questo significa solo che il mio "tasso di esperienza" sarà più lento, o devo semplicemente essere in cima a tutte le nuove informazioni che vengono fuori e migliorare costantemente e mettere in pratica le mie capacità, o non sarò abbastanza bravo come programmatore?

    
posta Christopher Spencer 20.04.2015 - 01:20
fonte

5 risposte

10

Dipende da cosa intendi per "riuscire".

Se intendi avere successo nel senso classico, come nel fare più soldi possibili senza assolutamente alcun riguardo per la salute personale, le relazioni, ecc. allora sarà molto più difficile se non stai programmando tutto il tempo. Le persone che ottengono lavoro presso Google, VMware, ecc. Sono dei geni o lavorano per 60-80 ore settimanali per fare i soldi che fanno (in genere, qui non si tratta di un pennello ampio).

Tuttavia, non vedo il successo in questo modo. Per me, lavorare tutto il tempo e dimenticare la salute, le relazioni, ecc. È abbastanza facile. Ho incontrato un sacco di gente che guadagna molto più denaro alla mia età che non ha nemmeno amici o hobby. Fanno parte di una diatriba "si arricchiscono o muoiono provando", che a me sembra non lasciare molto alla felicità. Ho visto più ricchi infelici che felici. Per me, questo non è successo. Ciò che è molto difficile da fare è avere un equilibrio in cui lasciare il lavoro e perseguire sforzi sani e creativi e promuovere una vita equilibrata in cui il lavoro è solo una parte di esso (anche se una parte significativa).

Devi definire cosa significa successo per te. Io, personalmente, lavoro per vivere, non vivo per lavoro. Mi piacciono la programmazione e l'apprendimento, ma amo anche i miei hobby, l'esercizio e gli appuntamenti. Recentemente ho iniziato a fotografare come hobby, e lo adoro. Credo anche che un buon programmatore sia un programmatore creativo, e credo che il mio nuovo hobby mi aiuterà anche a lavorare, a pensare fuori dagli schemi.

Tieni presente che il modo per guadagnare davvero un sacco di soldi e "riuscire" è entrare nella gestione e guidare molte persone. Se non ti prendi il tempo per sviluppare le abilità sociali necessarie a questo, un programmatore sarà un programmatore per sempre. I programmatori hanno un soffitto di vetro quando raggiungono i 40 circa, ma per la gestione, il cielo è il limite.

    
risposta data 20.04.2015 - 01:43
fonte
2

Dipende dalla tua metrica.

Sono stato un programmatore professionista per 25 anni. Le persone I più amano lavorare con sapere quali tecnologie applicare quando. Puoi essere un programmatore molto efficace senza essere sul lato sanguinante se hai il senso della maturità e del buon senso di sapere quando una soluzione è appropriata.

Mi sono imbattuto in molti programmatori che applicano ciecamente le ultime tecnologie senza tener conto:

  • come stanno andando in scala quando il programma diventa 10x (o 100x) più grande
  • come stanno andando in scala quando hai milioni di righe in un database
  • quanto appropriato saranno quando altri membri del team con meno esperienza devi usarli
  • quanto velocemente possono essere distribuiti

IMHO, la maturità viene solo con l'esperienza (spesso, nemmeno allora). Ore armeggiare a casa ti dà esperienza armeggiare. Non ti rende necessariamente un programmatore più efficace al lavoro.

    
risposta data 20.04.2015 - 01:38
fonte
1

Essere un ottimo ingegnere del software è non sempre più tecnologie conosci, meglio sei . È essenziale conoscere le nozioni di base che si applicano attraverso le tecnologie , ad es. schemi, test, automazione, raccolta dei requisiti, ecc ... È importante sapere COME per capire cosa è necessario utilizzare e devi anche sapere quando fare un passo indietro e chiedere aiutare . (Non è necessario sapere tutto)

Un grande ingegnere del software che molte aziende vogliono mantenere sono solide nella loro comprensione delle pratiche e possono ridimensionare i loro talenti non solo per produrre software di qualità in isolamento ma anche per influenzare gli altri nel modo giusto. I grandi ingegneri hanno bisogno di sapere come comunicare nel modo giusto (con colleghi o alta gestione) e come attingere agli altri talenti e come migliorare gli altri intorno a te. Queste cose sono molto più difficili da imparare e richiedono una mentalità completamente diversa rispetto all'apprendimento di una nuova lingua o tecnologia, ma queste sono cose che apprendi sul lavoro cambiando i tuoi comportamenti e non qualcosa che devi andare a casa e studiare dai libri dopo il lavoro.

    
risposta data 20.04.2015 - 02:20
fonte
0

Nel tuo commento a Lawrence, hai elaborato "Il denaro non è il mio obiettivo qui. Voglio essere un programmatore di successo in modo da poter fare bene il mio lavoro e provvedere a una famiglia un giorno, ma non tanto da diventare morto per il mondo e il mio computer è la mia vita. "

Allora sì, puoi certamente realizzarlo come programmatore senza sbilanciare la tua vita. Direi che è più facile ottenere ciò che vuoi in quel modo, in ogni caso. Ci sono certamente molti programmatori sbilanciati e ambienti di lavoro con programmazione sbilanciata, ma non hai bisogno (o, probabilmente, vuoi) di competere con quei programmatori o soffrire con quei luoghi di lavoro.

Ciò di cui hai bisogno è sviluppare la tua comprensione generale dell'ingegneria del computer, competenze sufficienti per fare abbastanza bene alcune cose utili e poi trovare un posto di lavoro relativamente sano e stabile. Se ti piace lavorare con i computer e trovare la programmazione ha senso per te ed è relativamente facile da capire, allora probabilmente sei abbastanza adatto per diventare un buon programmatore.

    
risposta data 20.04.2015 - 03:06
fonte
-1

Modificato per essere più simile a una risposta:

No, non è necessario passare tutto il tempo su un computer per essere un buon sviluppatore. È tutto molto bello e buono essere al di sopra di ogni nuova tecnologia che emerge, ma nella mia esperienza che non sempre porta alla conoscenza del modo migliore per applicare tali tecnologie ai processi aziendali reali. A volte, è meglio spendere il tuo tempo per capire come ottenere i maggiori guadagni dalle tecnologie mature che già usi, piuttosto che cercare di integrare nuove tecnologie che nessun altro ha esperienza con.

Un'altra cosa da tenere a mente è che come programmatore non si scrive codice per scrivere codice. A seconda della tua definizione di "successo", può essere più utile dedicare del tempo a comprendere i processi aziendali dietro il software che scrivi e quella comprensione generalmente non viene acquisita su un computer.

Nessuno sta dicendo che passare tutto il tempo su un computer non ti renderà un programmatore migliore, ma passare del tempo nel mondo reale, capire come viene utilizzato il software, può renderti un ingegnere del software migliore.

Inoltre, se (quando?) diventi uno sviluppatore principale grazie alla tua conoscenza di come funzionano le cose, generalmente ti viene data maggiore flessibilità spingendo i confini tecnologici e implementando tecnologie che potresti non essere un programmatore generale.

    
risposta data 20.04.2015 - 03:11
fonte

Leggi altre domande sui tag