Sono un programmatore autodidatta. Fino ad ora non ho avuto troppi problemi nel costruire cose che volevo. Storicamente, dato un problema, specialmente quello che ho causato, non ho avuto molti problemi a capirlo. Tutto questo è cambiato circa due mesi fa, quando mi è stata offerta la mia prima posizione in una società con cui ho avuto conoscenza dopo una richiesta di pull a un framework che usano.
Mi sono trasferito per la posizione e mi piace molto l'ambiente, è una piccola squadra di una decina di persone e da quello che posso dire sembrano tutti incredibilmente talentuosi. Mi hanno dato un progetto pet in cui avevo per lo più piena autonomia. Hanno sottolineato che non si aspettano che gli sviluppatori diventino interamente produttivi e redditizi fino a circa i 3-6 mesi e che questo progetto li aiuterebbe a capire dove mi trovo come sviluppatore. E 'stato bello e dopo un mese sono stato inserito in uno dei loro progetti più grandi in uno dei loro contratti più lunghi.
Dopo il passaggio a questo progetto mi sono sentito un po 'sopraffatto, si tratta di una base di codice GRANDE in cui le modifiche sono molto visibili ai clienti dei nostri clienti, poiché alimenta un certo numero di siti. È anche una base di codice molto complessa, mentre attribuisco molte delle mie difficoltà alla mia mancanza di esperienza è stato originariamente un progetto di salvataggio, sincronizza tutto tra due quadri separati e ha un numero di modelli che fanno cose che non posso dare alla mia esperienza, non ha documentazione e una copertura di prova dell'85%. Inizialmente ero incaricato di apportare alcune piccole modifiche, ad esempio implementando notifiche honeybadger sugli errori di consegna della posta, o riscrivendo i test minitest con le specifiche rspec.
Poi sono stato incaricato di aggiornare uno dei framework da cui dipende il progetto. Questo mi ha richiesto un tempo anormalmente elevato, e sono stato ripreso a qualcos'altro fino a quando uno degli sviluppatori senior è tornato dalle vacanze per fungere da sistema di supporto durante il processo. Il compito che mi è stato assegnato è stato quello di darmi una quantità altrettanto grande di problemi.
Mi sono seduto con i miei datori di lavoro e ho parlato con loro di questo. Hanno affermato che è normale data la mia esperienza e che attualmente soddisfo le loro aspettative. Tuttavia, questa è la prima volta nella mia vita, non potrei davvero fare ciò che ho deciso in un tempo ragionevole. È una sensazione condivisa tra gli altri, è un evento normale?
Quale sarebbe il tempo atteso per familiarizzarsi con una grande base di codice di 50.000 righe? Ci sono altre pratiche che potrei non sapere che potrebbero aiutarmi a familiarizzare con un codebase più velocemente?