Continuiamo la serie speciale nella sezione "Storie di successo": in essa parleremo di sviluppatori che hanno studiato a JavaRush e ora lavorano in questa azienda, sviluppando il prodotto. Il nostro terzo eroe è Pasha. Prima di diventare uno sviluppatore, ha dedicato 15 anni all'amministrazione di sistema, ma ha deciso di cambiare completamente professione. In JavaRush scrive e risolve problemi e migliora il sito.
"Ho capito che non volevo lavorare come amministratore di sistema per tutta la vita."
Prima di dedicarmi alla programmazione, ho girato a lungo intorno al can per l'aia. Fin dai tempi della scuola, di tanto in tanto ho provato a iniziare a imparare qualche linguaggio di programmazione, incluso Java. Ho cominciato a scuola, poi ho anche insegnato un po', ma non sono mai andato più in profondità per pigrizia. Sono entrato all'università per specializzarmi in Ingegneria dei sistemi informatici. Di conseguenza, sono diventato amministratore di sistema: era più vicino alla mia specialità che alla programmazione. Allora mi sembrava che programmare fosse difficile e noioso; non potevo immaginarmi in questo ruolo. Dopo gli studi ho lavorato come amministratore di sistema in diverse aziende, per un totale di oltre 15 anni. Ho capito che non volevo passare tutta la vita occupandomi dell'amministrazione di sistema. Mia moglie ha avuto un ruolo importante nella mia motivazione. Continuava a dire: “O svilupparsi nell'amministrazione del sistema o riqualificarsi. Andiamo, la programmazione è un argomento normale."“Ho rinunciato una volta per sei mesi, ma alla fine ho finalmente completato i miei studi”
Ho deciso di concentrarmi su Java dato che ci veniva già insegnato un po' all'università. Inoltre, ho monitorato i posti vacanti degli sviluppatori e molto spesso cercavano Javaisti. Avevo 34 anni quando sono diventato ufficialmente un programmatore :) Molte persone pensano che a 30 anni sia troppo tardi, ma succede anche a me. A nessuno importa che età hai. È solo la sindrome dell'impostore. Una tappa importante nel mio apprendimento è stato il mio incontro con JavaRush. Mi sono imbattuto nel sito quasi subito dopo la sua comparsa. Ricordo che a quel tempo ero molto influenzato dalle lezioni motivazionali che c'erano nel corso: ero molto ispirato. Mi è piaciuto molto anche il controllo automatico delle attività, anche se a volte non ho capito dove ho commesso un errore nella soluzione :) Nonostante tutti i vantaggi, ho rinunciato e ho avviato JavaRush più volte. Una volta ho rinunciato per sei mesi, ma alla fine ho finalmente completato i miei studi. Alcuni argomenti erano difficili: tutto era nuovo per me. In questo caso, ho dedicato più tempo a impararli, capirli e risolvere problemi. Ci sono stati momenti in cui guardavo i problemi e non sapevo da dove iniziare a risolverli. Di conseguenza, mi sono arrampicato e ho guardato la risposta, poi sono apparsi i seguenti pensieri: "Avrei potuto pensarci da solo". Ma quando affrontavo un argomento, me ne andavo felice: mi piaceva molto la sensazione di portare a termine un compito. Non avevo una routine di studio specifica. Quando avevo tempo e voglia, li spendevo nell'allenamento. È successo che nel mio ultimo lavoro mi sedevo a risolvere problemi e poi la sera a casa."Ho ottenuto il lavoro che volevo"
Dopo aver superato JavaRush, ho ottenuto uno stage online lì, che è durato circa 4 mesi. Lì ho imparato tecnologie completamente diverse che non erano incluse nel corso. Già per il test era necessario padroneggiare le conoscenze base di Spring e Hibernate: era necessario creare un'applicazione CRUD con interfaccia web per una Entità. Dirò questo: se mentre studi Java non ti guardi intorno ai framework e alle tecnologie più diffuse, allora un test del genere sarà uno shock. Ho guardato e letto, gradualmente tutto si è riunito nella mia testa in un'unica immagine e alla fine ho fatto un test. Durante lo stage abbiamo continuato ad approfondire la Primavera e l'Ibernazione. Ogni settimana c'erano nuovi compiti che utilizzavano le nuove tecnologie. Non ho imparato tutto completamente, ma non credo sia possibile :) Quando lo stage stava per finire, ho scritto un curriculum e ho iniziato a cercare posti vacanti per junior. Ho dedicato circa 4 mesi ai colloqui: ho lavorato e sono andato ai colloqui contemporaneamente. Ricordo che allora c'erano pochi posti vacanti per un junior, quindi dovevi provare subito a candidarti per una posizione intermedia. Il problema, ovviamente, era che durante l'intervista hanno attirato l'attenzione sulla mancanza di esperienza nella programmazione. Nel mio curriculum ho indicato anche esperienza in ambito amministrativo. Questo ha confuso molti reclutatori... Ho svolto compiti di prova, li ho pubblicati sul mio profilo GitHub, ho cercato di migliorare il mio curriculum. Capivo che non ero “zero” nella programmazione e di tanto in tanto venivo chiamato per dei colloqui. Diversi posti volevano già assumermi, ma lo stipendio offerto era basso. Una società che scriveva software per le aziende ucraine ha offerto all'inizio 7mila grivna e il tetto era di 10mila. Allora ho pensato che avrei potuto andarci, ma non ci sono andato: i soldi erano pochi e la compagnia incomprensibile. A proposito, come amministratore di sistema ho ricevuto molto di più di quello che mi veniva offerto come Java junior. Dopo uno stage in una chat generale, qualcuno ha lasciato un posto vacante: stavano cercando uno junior in JavaRush. Ho inviato il mio curriculum e sono stato invitato. L'azienda era alla ricerca di una persona che sviluppasse contenuti formativi, qualcuno che correggesse i compiti esistenti e ne scrivesse di nuovi. Questa funzionalità mi era chiara perché avevo già completato la maggior parte delle attività in JavaRush. È così che sono entrato in JavaRush e lavoro ancora qui. Per molto tempo mi sono seduto e ho corretto i problemi, poi hanno assunto un'altra persona per questo, l'ho aiutato a mettersi in gioco e noi due abbiamo iniziato a migliorarli. Attualmente stiamo lanciando una nuova versione di JavaRush, così come il corso CodeGym: stiamo scrivendo nuovi compiti, partecipando alla traduzione e alla configurazione del sito. Ho ottenuto il lavoro che volevo. È chiaro che puoi svilupparti nell'amministrazione di sistema: cerca lavori interessanti, stipendi più alti, lavora con compiti più complessi. Apparentemente, inizialmente ho scelto la professione sbagliata per me stesso. Quando stavo imparando Java, avevo delle paure: se lo avessi imparato, mi sarei seduto lì come un amministratore di sistema e mi sarei annoiato. No, sono contento di tutto. Penso di aver trovato la mia vocazione.Suggerimenti per uno sviluppatore principiante:
- Impara un debugger per eseguire il debug dei programmi scritti. Un debugger ti aiuta a tenere traccia dell'esecuzione del programma passo dopo passo e a identificare gli errori. Non lo usavo in quel momento; il mio apprendimento sarebbe andato più velocemente se lo avessi usato. In tutte le fasi della formazione, la conoscenza del debugger consentirà una comprensione più approfondita degli argomenti che tratterai.
- Decidi in quale direzione vuoi lavorare. Potrebbe trattarsi di sviluppo web, sviluppo Android, front-end, back-end, ecc. Passa attraverso le basi di un linguaggio di programmazione, ma poi è meglio non espandersi e imparare ciò che ti piace e a cui sei vicino.
- Inglese. Inizialmente è richiesto un certo livello minimo di conoscenza della lingua inglese. A proposito, durante le interviste, ho avuto l'impressione che svolga un ruolo più importante della capacità di programmare stessa. Un programmatore debole con un inglese fantastico ha maggiori possibilità di un grande programmatore con un inglese debole.
- Annota le domande a cui non hai potuto rispondere durante il colloquio. Puoi elaborarli a casa e sentirti più sicuro al prossimo colloquio.
- Non aver paura del rifiuto. Bombarda a tappeto i tuoi curriculum. Avevo anche paura, ma in qualche modo ho superato la paura e ho iniziato a fare i colloqui.
GO TO FULL VERSION