CodeGym /Java Blog /Random-IT /Come cambiare carriera da ingegnere QA a sviluppatore: la...
John Squirrels
Livello 41
San Francisco

Come cambiare carriera da ingegnere QA a sviluppatore: la storia del programmatore

Pubblicato nel gruppo Random-IT
Oggi chiunque può imparare a diventare uno sviluppatore: un manager, un venditore, un cameriere o un formatore. Tuttavia, la programmazione a volte può sembrare travolgente per alcuni principianti e si sentono scoraggiati in anticipo riguardo alle loro possibilità di ottenere un lavoro come sviluppatore junior. Ecco perché alcuni studenti scelgono il ruolo di ingegnere QA come opzione sicura. Il QA è una persona che testa il software e trova bug in esso. Questa professione ti permette di entrare nel complesso mondo della programmazione. Come cambiare carriera da ingegnere QA a sviluppatore: la storia del programmatore - 1Presentiamo la storia dello sviluppatore Kyrylo, che ha iniziato il suo viaggio nell'IT con test QA (garanzia di qualità) e in seguito è diventato uno sviluppatore.

Il QA mi andava bene e ho iniziato ad approfondire quest'area

Non ero interessato alla carriera di sviluppatore dopo la scuola. Tuttavia, sono entrato all'università presso la facoltà di "Sviluppo di software di sistema" perché i miei genitori mi hanno consigliato di scegliere questa specializzazione. Ho capito la programmazione, ma ci è voluto del lavoro. Ho svolto le tesine con successo, ma mi sono laureato senza solide conoscenze di programmazione. Poi ho provato a cercare lavoro come programmatore; tuttavia, dopo aver fallito 2-3 colloqui, che non sapevo come superare, ho deciso di diventare un tester del QA. Un giorno mi sono imbattuto in un'azienda che reclutava persone per stage di QA. Ho superato con successo il colloquio, ho completato il mio tirocinio e sono rimasto lì per lavorare come tester. Tutto mi andava bene e ho iniziato ad approfondire quest'area. Ho scritto per la prima volta un test automatizzato in Java. È stato un test facile: ha aperto una finestra del browser, ha cliccato su elenchi specifici e ha selezionato elementi, ma mi è piaciuto molto. Sembrava che avessi fatto una magia. Dopo un po', un compagno di classe che lavorava in un'altra azienda mi ha invitato a ricoprire la posizione di ingegnere QA. Quindi ho accettato l'offerta e ho acquisito una grande esperienza nel controllo qualità e nel lavoro in team. Dopo aver affrontato i test manuali (il che non è molto interessante), un manager ha chiesto al nostro gruppo se c'era qualcuno disposto a lavorare con i test automatizzati e io mi sono offerto volontario per questo ruolo. Avevo bisogno di conoscenze aggiuntive per gestire le nuove attività, quindi ho imparato il C#, che mi ha permesso di gestire i test automatizzati esistenti e di svilupparli. Successivamente, ho avuto l'opportunità di passare a una posizione di sviluppatore in quell'azienda, ma ho deciso di lasciare l'azienda perché il mio team si era sciolto. Quindi, ho ottenuto una posizione di ingegnere del controllo qualità presso un'azienda con un ufficio nel centro della città e montagne russe in ufficio. Poi ho pensato: mi piacerebbe restare lì fino alla fine della mia carriera. Tuttavia, lavoravo lì da quasi quattro anni prima di decidere di andarmene. Ho avuto un'ottima esperienza di lavoro in team. Guardavamo spesso video di conferenze tecniche o video di formazione su come funziona la tecnologia. Anche se ero impegnato in test automatizzati, ho studiato tecnologie correlate e acquisito nuove competenze. Tutto sommato, è stata una bellissima esperienza per me.

Volevo fare più programmazione

Poi ho trovato un posto vacante per un ingegnere del controllo qualità, che richiedeva la conoscenza di Python. Ho letto rapidamente un libro su Python per comprenderne la sintassi e ho completato l'attività di test che mi ha assegnato l'azienda. Nonostante avessi rispettato la scadenza, l'azienda ha accettato il mio lavoro e mi ha invitato a un colloquio. La nostra conversazione è stata semplice: ho parlato con il responsabile del controllo qualità e il project manager su argomenti generali relativi a test e programmazione. E sono stato assunto. Le mie responsabilità includevano l'esecuzione di test automatizzati e manuali. Tuttavia non mi piaceva molto il manuale, che implica azioni monotone, e volevo fare più programmazione. Così ho iniziato ad approfondire la conoscenza di Python, mi sono iscritto ai corsi e ho parlato con il manager delle mie ambizioni. Ma a quel tempo non avevano una posizione di sviluppatore vacante. Ho lavorato e studiato allo stesso tempo. Il passaggio è durato circa nove mesi: in primavera ho iniziato ad allenarmi e a dicembre ho trovato lavoro. La cosa più difficile durante la transizione non è stata nemmeno l'aver scoperto nuovi concetti di programmazione, ma piuttosto il fatto che ero sovraccarico e passavo troppo tempo con il computer.

La mia esperienza come ingegnere del controllo qualità mi aiuta nella programmazione

Un giorno mi scrisse un compagno di classe che lavorava per un'azienda informatica. Ha offerto un lavoro da ingegnere del controllo qualità, ma ho detto che stavo cercando un lavoro da sviluppatore. Si è scoperto che avevano un posto vacante, quindi ho deciso di provarci. Abbiamo avuto un colloquio di tre ore su diverse tecnologie (secondo la tabella delle competenze), e successivamente un colloquio con un cliente. Hanno visto del potenziale in me, quindi sono stato assunto. Mi è piaciuto lavorare lì perché mi hanno fatto conoscere molte nuove tecnologie. Inoltre, l'azienda aveva ottimi colleghi a cui si poteva chiedere consiglio sul progetto. La precedente esperienza nei test su progetti di grandi dimensioni mi ha permesso di comprendere i processi di sviluppo di un prodotto. È stato sicuramente un vantaggio. La mia esperienza come ingegnere del controllo qualità mi aiuta nella programmazione ora. Quando eseguo un compito, so che i miei colleghi lo metteranno alla prova, quindi descrivo quanti più dettagli possibili a cui vale la pena prestare attenzione. Quindi, quando gli ingegneri del QA arrivano con una richiesta di aiuto per capirlo, capisco cosa vogliono sapere da me. Quindi li aiuto a testare componenti specifici che sono in fase di sviluppo. L'abilità di analizzare sistemi con molti elementi è stata utile. Posso facilmente ricordare il quadro generale anche di un sistema complesso. Parte dei compiti di un programmatore include anche la scrittura di unit test che testano una funzione specifica nell'applicazione. Sapere come scrivere uno script di test aiuta più direttamente il mio lavoro. Se fossi laureato adesso, proverei a trovare lavoro come sviluppatore fin dall'inizio. Avevo paura di programmare perché all'università studiavamo C++, dove devi considerare tantissime sfumature durante la programmazione. Tuttavia, durante la formazione, mi sono reso conto che non era così: le cose complesse possono essere scritte in modo semplice e chiaro.
Commenti
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION