Come posso verificare i miei progressi come uno sviluppatore solista junior [chiuso]

38

Attualmente sto lavorando per una compagnia di 2 persone, come sviluppatore principale solista. Il mio capo riceve i clienti, prende in giro alcuni modelli di design e li consegna a me.

Questo sistema ha funzionato bene e mi sto davvero divertendo.

I tipi di progetti su cui lavoro sono rivolti a piccole e medie imprese e di solito desiderano un sistema CMS. Sviluppato da zero, costruirò un back-end personalizzato per il cliente per aggiungere / modificare / rimuovere categorie, tag, prodotti ecc. E quindi inviarli al front-end in base al modello di progettazione che mi è stato consegnato. Con il passare del tempo, i progetti sono diventati più complessi, con le caratteristiche del carrello degli acquisti / degli ordini e altre caratteristiche comuni del tipo e-commerce.

Ancora una volta, questo sistema ha funzionato bene e mi sto davvero divertendo.

Il mio problema è il mio sviluppo personale come programmatore. Trascorro molto del mio tempo libero a leggere blog di programmazione, controllo tramite stackexchange, lettura di libri di programmazione consigliati (attualmente su The Pragmatic Programmer ', veramente buono finora), facendo esercizi per il cervello ( lumosity.com e khanacademy problemi di matematica), facendo un sacco di esercizio fisico e altre attività di tipo di sviluppo personale.

Non posso fare a meno di sentire, però, che mi sto perdendo feedback, critica. Il mio capo è eccezionale e non trattiene mai le lodi riguardo al mio lavoro, ma sfortunatamente è impegnato a controllare il mio codice, o, a essere sincero, non penso che sia una delle sue specialità e quindi non può fornire feedback .

Voglio sapere cosa sto facendo male e cosa sto facendo bene. Dovrei mettere molta logica nel controller, sto modulando il mio codice abbastanza ecc.

Quindi quello che ho fatto è stato sviluppare una piccola app "Family Budgeting" e ho cercato di farlo in modo pulito ed efficace come attualmente so come.

Quello che voglio sapere è, c'è un posto dove posso presentare questa app, e avere alcuni sviluppatori esperti che forniscono feedback. Non è solo una sottosezione del mio codice che sembra richiedere "codereview.stackexchange", è tutto il mio flusso di lavoro che voglio criticare.

So che questo è molto da chiedere, e mi aspetto che il consiglio principale dato sarà quello di cercare un lavoro all'interno di una squadra, che è sicuramente qualcosa su cui cercherò più avanti, ma per ora voglio insistere con la mia attuale situazione lavorativa, ma non voglio sviluppare troppe cattive abitudini.

Fammi sapere se posso fornire ulteriori informazioni per aiutare a chiarire, o se questo non è il posto giusto per questo tipo di domanda, mi scuso in anticipo. Non volevo usare reddit perché pensavo che questa comunità promuova risposte più ben pensate.

    
posta hoppipolla 17.09.2012 - 02:36
fonte

7 risposte

21

Sei sulla strada giusta per migliorare le tue competenze ed è comprensibile che non sei sicuro dell'affidabilità e della prontezza del codice a livello aziendale.

Questo è un processo normale da seguire per uno sviluppatore junior, e il tuo interesse a migliorare è molto importante, poiché è la chiave per diventare un giorno uno sviluppatore da rockstar.

Come riferimento per apprendere le migliori pratiche, ti consiglio di iscriverti a progetti open-source che sono ospitati gratuitamente per programmatori appassionati / curiosi. Ti aiuterebbero davvero a capire come utilizzare le migliori pratiche e come decidere sulla progettazione dell'applicazione. Inoltre, cerca di essere coinvolto nello sviluppo di progetti open-source, poiché aumenterà notevolmente l'auto-apprendimento e il miglioramento.

Raccomando anche di partecipare agli eventi della comunità locale per sviluppatori di software. Puoi trovare alcuni di questi gruppi su communitymegaphone.com . Parla con i programmatori di amici locali, sono per lo più brave persone a cui non dispiacerebbe aiutare un collega.

    
risposta data 17.09.2012 - 04:07
fonte
9

Man mano che acquisisci più esperienza puoi certamente tornare indietro e rivedere i tuoi precedenti progetti / codice per vedere dove hai sbagliato. Il senno di poi è una cosa bellissima. So per certo che ho guardato il codice / documentazione che ho scritto x fa e ho capito dove sono andato storto e dove avrei potuto migliorare.

Il fatto di leggere blog, libri, SE, ecc. dovrebbe darti maggiori informazioni sulla programmazione come parte del tuo sviluppo personale e le prove e gli errori e l'evoluzione dei tuoi progetti e del codice dovrebbero certamente essere la prova del fatto che stai migliorando. L'autocritica può essere un'ottima cosa.

Detto questo, avere l'occhio critico di un altro sviluppatore aggiunge sempre valore e può fornire opinioni / opzioni alle quali potresti non aver pensato. Anche se non conosco alcun sito particolare, puoi scaricare un intero progetto per una revisione del codice: potresti mettere frammenti di ciò che consideri sospetto su codereview.stackexchange per il loro esame e commento, quindi prendere quel feedback a bordo e applicarlo altrove dove appropriato.

In alternativa, potresti scrivere alcune cose di opensource e lanciarle su github (o equivalente). La community open source certamente criticherà il tuo lavoro e lo migliorerà dove meglio riterrà opportuno.

Alla fine della giornata, se i prodotti che stai producendo funzionano come previsto, soddisfano i requisiti aziendali e sono manutenibili: stai facendo qualcosa di giusto.

Per domande di programmazione concettuale, schemi, ecc. Puoi sempre pubblicare tali domande qui su PSE e per problemi di implementazione del codice su SO.

    
risposta data 17.09.2012 - 04:00
fonte
3

Le condivido la mia opinione, alcune parole di saggezza e alcune domande su cui riflettere.

Essendo un programmatore esperto, ho scoperto nel corso degli anni che il codice migliore è quello più semplice (guarda il concept di KISS) e più facile essere modificato da un altro programmatore.

Inoltre, lasciando uno spazio adeguato affinché il codice non sia congestionato (spazio per respirare) e strutturato in modo uniforme. Usa una ben nota convenzione di denominazione per le tue variabili, dando loro nomi comprensibili (che un altro programmatore può capire) e scrivendo commenti che sono al punto, non troppo e non troppo poco.

Se segui quanto sopra, sei già sulla buona strada.

Inoltre, poiché gli sviluppatori sono qualcosa come gli architetti, ti darò un detto molto importante su cui riflettere;

  1. "La perfezione si ottiene, non quando non c'è più nulla da aggiungere, ma quando non c'è più nulla da togliere" - Antoine de Saint-Exupery.

e

  1. "La ricerca dell'eccellenza ti motiva, la ricerca della perfezione è demoralizzante" - Harriet Beryl Braiker.

Tuttavia,

  1. "Molti eventi, circa l'80% degli effetti proviene dal 20% delle cause" - Principio di Pareto

Con quanto sopra voglio che tu capisca che esiste un buon equilibrio tra sforzo ed effetto, costo e qualità.

E le domande su cui riflettere;

  1. Che cosa mi piace fare tra cinque anni da oggi?
  2. Lo sforzo per migliorare le mie capacità di codifica andrà a beneficio della mia carriera professionale nel lungo periodo?
risposta data 17.12.2012 - 15:02
fonte
1

Potresti voler controllare link

Sarebbe un ottimo posto per ottenere feedback sul tuo codice o sul tuo design da professionisti esperti.

    
risposta data 21.09.2012 - 22:07
fonte
1

Continua a leggere libri, blog e Stack Overflow Q & A. Se vuoi migliorare te stesso in un modo più sociale, perché non impegnarsi a lavorare su un progetto open source? Non intendo crea il tuo progetto , ma lavoro su uno esistente.

Dato che sei l'unico sviluppatore di questa compagnia, immagino che sarebbe possibile che un giorno assumerai qualcun altro. Dì a te stesso che questo giorno, il ragazzo dovrà leggere il tuo codice. Scrivi già qualche documentazione sul tuo strumento? Tenere presente che il tuo lavoro può essere letto da altre persone è una buona cosa per gli sviluppatori solisti e ti aiuta a creare codice migliore.

    
risposta data 20.09.2012 - 14:14
fonte
1

Sono in una situazione simile a te, sono stato assunto come unico programmatore per un'azienda di 5 persone, e solo uno di loro è direttamente coinvolto nelle applicazioni che sto sviluppando / aggiungendo. Fortunatamente, non ho dovuto creare nulla da zero, ma fino ad ora solo le applicazioni modificate costruite dal mio predecessore. Così facendo, credo di essermi già migliorato riconoscendo quali parti del suo codice erano buone, quali parti erano cattive e come migliorarle.

Il codice di lettura è fondamentale per migliorare la tua codifica, quindi ti suggerisco soprattutto di cercare un progetto open source, leggere il codice, comprenderlo e cercare di giudicare ciò che è buono, ciò che è male e ciò che potrebbe essere migliorata. Magari scrivi anche una recensione del codice sul tuo blog.

Cheers!

    
risposta data 06.04.2013 - 22:57
fonte
-1

Lascia. Trova un nuovo datore di lavoro in cui lavorerai in un team più grande di sviluppatori, inclusi alcuni ragazzi hot di merda da cui puoi imparare.

Hai chiaramente le giuste motivazioni nel volere.

    
risposta data 16.12.2012 - 09:35
fonte