Una laurea in matematica dà un vantaggio quando si impara a programmare? Tutto dipende da quanto impegno metti in argomenti correlati.

Questa è la storia di Roman, che viene dall'Ucraina. Oggi è uno sviluppatore Java senior. A metà del 2015, era uno studente che lavorava a un master in matematica applicata. La storia originale è qui . Di seguito puoi trovare le parti più importanti.

Data la realtà del suo paese d'origine, Roman era certo che un'istruzione in matematica gli avrebbe fatto solo guadagnare bene come programmatore. Ma la sua scelta di diventare uno sviluppatore Java è stata più casuale che deliberata. Non voleva studiare solo sui libri o nei corsi a tempo pieno: il nostro studente ha deciso che costano troppi soldi, ma offrono pochi vantaggi.

E poi ha trovato il nostro corso Java. Era fine agosto/inizio settembre 2015.

Un piano di studi Java

Mentre preparava il suo piano di apprendimento, Roman partiva dal fatto che non aveva tempo per scherzare.

Ha fissato un obiettivo: acquisire rapidamente conoscenze per mantenere l'interesse per l'apprendimento, ma non così in fretta da sovraccaricare il cervello.

Di conseguenza, questo è ciò che ha deciso:

  1. Studia cinque giorni alla settimana (dal lunedì al venerdì).
  2. Durante il fine settimana, fai qualsiasi cosa tranne studiare.
  3. Dedica 4 ore a ogni sessione di studio: dopo ogni ora, fai una pausa di 15 minuti per camminare, rilassarti e preparare il tè.

Un totale di 20 ore settimanali. Non male, eh? Inoltre, a volte Roman doveva andare all'università, perché frequentava ancora la scuola di specializzazione.

A dicembre aveva completato metà del corso e decise di aver già imparato moltissimo, anche se c'erano momenti di crisi in cui il suo cervello si rifiutava di ricevere nuove informazioni e solo un fine settimana senza alcuna programmazione lo aiutò a fare progressi.

Passare a un nuovo livello

Tre mesi dopo l'inizio degli studi, Roman iniziò a chiedersi cos'altro avesse bisogno di sapere per trovare un lavoro. Per un consiglio, si è rivolto a programmatori che conosce.

E oh, le parole sconosciute che ha sentito, come "database" (orrore!), e molto altro, gli hanno fatto capire che aveva bisogno di accelerare il passo e fare ancora di più. Questi suggerimenti aiuteranno sicuramente anche te.

  1. Leggendo libri. Nel caso di Roman, "Head First Java", consigliato ai principianti molto inesperti, è stato utile. Lo ha aiutato a capire meglio alcune delle sfumature.
  2. Rete. Dovresti visitare tutti i luoghi di ritrovo dei programmatori pertinenti nella tua città (e altrove). Anche se molto non è chiaro, è così che ti immergi nell'ambiente.
  3. Siti informatici. Media per programmatori, corsi video su YouTube, forum: devi approfondire tutto questo e leggere articoli utili per formare un quadro olistico di ciò che significa prosperare per uno sviluppatore Java.
    Personalmente, consigliamo di iniziare con le sezioni Articoli, Forum e Chat su CodeGym :)
  4. Padroneggia le tecnologie correlate: MySQL, HTML e CSS e molto altro.
  5. Crea un fantastico profilo LinkedIn per te stesso, elenca tutte le tue abilità ed espandi attivamente la tua cerchia di connessioni professionali.
    Roman condivide la sua esperienza: "Adesso ho più di 10.000 amici su LinkedIn. Questo è necessario per iniziare. E mi ha aiutato [quando] un team di freelance Android stava cercando di aggiungere un principiante e mi ha contattato".

Primi fallimenti

Ovviamente, parallelamente ai suoi studi, Roman cercava uno stage presso aziende e un giorno ottenne un colloquio. Non era pronto per presentarsi in modo convincente in inglese e rispondere a tutte le domande del capo tecnico. Secondo lui, "ha terminato [l'attività di test] in qualche modo, anche se non con tutte le funzionalità. Dopo un po', la sua domanda è stata rifiutata e ha deciso di andare avanti.

Roman ha ottenuto il suo primo lavoro grazie a LinkedIn, dove è stato invitato a partecipare a un progetto di sviluppo Android. Il vero lavoro, ovviamente, era più difficile dei compiti su CodeGym e c'era molto da imparare lungo il percorso. Il team si stava gradualmente sgretolando, quindi non sono stati in grado di portare il progetto pilota a un nuovo livello e lui ha dovuto cercare un nuovo lavoro.

Alla ricerca di un nuovo lavoro

Dove andare? Roman ha setacciato i media online alla ricerca di programmatori, dove ha trovato le informazioni di contatto per le aziende adatte nella sua città. Ha avviato una massiccia campagna di mailing.

Per assicurarsi che tutto andasse bene, ha scritto il suo curriculum in inglese. Secondo lui, era pieno di un sacco di sciocchezze, dal momento che sentiva di non avere niente di speciale da scrivere. Un elemento obbligatorio è una lettera di accompagnamento (che dovrebbe essere anche in inglese) in modo che i reclutatori capiscano per quale posizione ti stai candidando e perché. Ha preparato una risposta in inglese per quella domanda preferita dell'intervista: "Parlami di te". E 'molto utile.

Le interviste sono state difficili, imbarazzanti e scomode, ma Roman le ha superate. In alcuni, volevano solo chattare. In altri, era necessario eseguire un paio di attività di codifica.

Prima offerta

Dopo quattro colloqui, due aziende hanno rifiutato Roman, ma due gli hanno fatto un'offerta: una per la posizione di sviluppatore Android, l'altra per uno sviluppatore Java. Ha esitato per un po', non sapendo cosa fare, ma alla fine è diventato uno sviluppatore Java.

Sono passati alcuni anni e Roman è uno sviluppatore Java senior, che nel tempo libero si occupa attivamente di progetti open source (ecco il suo profilo GitHub ) e condivide spesso la sua utile esperienza con gli studenti nella sezione " Articoli " di CodeGym.