Ciao a tutti! Mentre il 2018 volgeva al termine ( la storia originale è stata pubblicata a gennaio 2019 — ndr), io, come tutte le persone perbene, ho deciso di saldare i miei debiti. E devo ringraziare tutti coloro che in un modo o nell'altro mi hanno aiutato a cambiare la mia vita e diventare un programmatore. La mia storia potrebbe sembrare piuttosto ordinaria tra le storie di altri studenti, nonostante i miei 38 anni (all'epoca in cui sono stato assunto), se non fosse per un fatto che, credo, la contraddistingue. Il fatto è che la maggior parte delle storie che ho letto su come le persone sono diventate programmatori seguono in qualche modo questa trama: l'autore ha sognato di diventare un programmatore fin dall'infanzia, ma la vita ha preso una piega sbagliata, o l'autore ha mostrato una certa inclinazione a programmare, ma ancora una volta non era nelle carte. In altre parole, erano quelli che potremmo chiamare (senza offendere nessuno) programmatori "latenti". Per me, questo non era il caso.Durante l'infanzia, l'adolescenza e anche la maggior parte della mia maturità, non avevo nemmeno pensato a una carriera come programmatore. Inoltre, sono uno studente di materie umanistiche classiche. Al liceo, le uniche materie in cui prendevo voti abbastanza buoni erano le discipline umanistiche. Ho lottato con le scienze dure, guadagnando a malapena le C. Il mio liceo e l'università non avevano corsi di informatica. Beh, facevano parte del curriculum, ma gli insegnanti non si trovavano. Se venivano trovati, erano costantemente in congedo per malattia. Fondamentalmente, ricordo un totale di tre lezioni di informatica durante tutta la mia carriera accademica. Inoltre, mi sono laureato in giurisprudenza. In breve, sicuramente non ho una mentalità da tecnico. Si tratta di informazioni di base o dati di input. Ma prima le cose principali.L'idea di diventare un programmatore mi è venuta per la prima volta nel 2013.A quel tempo, ero un manager di medio livello di discreto successo con uno stipendio mensile superiore alla media. Tutto andava bene, ma ogni tanto pensavo "cosa c'è dopo?" È stato allora che mi sono imbattuto in un articolo motivazionale di un autore di CodeGym che affermava che chiunque abbia buon senso può diventare un programmatore. Non mi consideravo uno stupido, ma avevo dei dubbi piuttosto seri sulle mie capacità, data la mia totale mancanza di conoscenze di base in questo campo. E qui devo dare i miei primi ringraziamenti: quell'autore ha espresso i suoi pensieri in modo così convincente nella sua serie di articoli che ha piantato l'idea della programmazione nella mia testa, dove alla fine è germogliata. Grazie, signor autore! Tuttavia, nonostante il mio interesse, non ho fatto molti passi attivi per implementare ciò che mi era venuto in mente. Ho scavato principalmente nelle lezioni e nei compiti nei primi 10 livelli. C'erano molte cose che non capivo. Programmare sembrava lanciare un incantesimo magico, ma seguendo il consiglio dell'autore di cui sopra, ho letto la lezione, ancora e ancora, cercando di risolvere l'ultimo compito - dopotutto, mi era stato promesso che prima o poi i pezzi del puzzle sarebbero andati a posto (saltando avanti, è proprio quello che è successo!). I miei progressi sono stati piuttosto lenti, non solo perché molte cose non erano chiare, ma anche perché, come ho detto prima, tutto nella mia vita andava bene: un buon stipendio e un lavoro interessante (a quel tempo). Un futuro passaggio a lavorare come programmatore Java junior per uno stipendio pari alla metà dello stipendio di un manager non era in qualche modo entusiasmante. Naturalmente, in seguito c'era il potenziale per una crescita al rialzo, molto più di quanto potessi aspettarmi come manager, La mia situazione è cambiata quello stesso anno. Ho perso il lavoro e con esso la mia vita agiata. Poiché la mia specializzazione era piuttosto ristretta e non riuscivo a trovare alcuna opportunità di lavoro nel mio campo, sono dovuto scendere in un'altra area che conoscevo bene. Ma lì la concorrenza era più alta e il mio stipendio era corrispondentemente più basso e, inoltre, ora paragonabile allo stipendio di uno sviluppatore Java junior. Incerto se potessi capire Java da solo, ho deciso che l'istruzione online è sicuramente interessante, ma l'apprendimento offline è molto più reale (mi sbagliavo). Ho comprato un corso da una delle scuole che si offre di insegnare Java. Pieno di speranza, ho iniziato i miei studi. Progredendo nel corso, è diventato chiaro che completarlo non mi avrebbe aiutato a qualificarmi per la posizione di sviluppatore Java junior, perché oltre a conoscere la sintassi e i principi fondamentali, c'è ancora molto altro lavoro da fare (non sapevo eventuali abbreviazioni come SQL). Questo è stato molto demotivante perché ho pagato un bel po' per il corso e mi aspettavo che l'investimento sarebbe stato ripagato presto. Fanculo. No, la teoria che hanno insegnato non era male e ho imparato alcune cose, ma a metà del corso mi sono reso conto che un'istruzione offline mi avrebbe fornito all'incirca la stessa quantità di conoscenza di una online, ma sarebbe stata più costosa . Quindi, ho deciso di non pagare la seconda metà del corso.Invece ho acquistato un abbonamento a questo corso Java , approfittando dello sconto di Capodanno. Detto fatto. Ma anche qui non è stato tutto sole e lecca lecca (tutt'altro). Ho studiato principalmente dopo il lavoro, dedicando un'ora o due o tre all'apprendimento. Erano tempi bui: quando sei stanco dopo il lavoro, niente ti si attacca davvero al cervello, inoltre la lingua stessa è difficile da apprendere (sono uno studente di scienze umane, ricordi?). E sebbene la mia famiglia (moglie e figlio) mi sostenesse, è stato difficile trovare il tempo per studiare, per la famiglia e per me stesso. Il risultato fu una crudele procrastinazione. Ho abbandonato gli studi per sei mesi alla volta, giocando ai giochi online (un male per il quale era stato preparato un inferno speciale), ma prima o poi sono tornato, ho letto le storie di successo degli altri e ho ricominciato da capo. La situazione è stata inoltre notevolmente aggravata dalla conseguente crisi politica e, di conseguenza, economica. Il mio stipendio non è stato ancorato al dollaro e la valuta nazionale è stata svalutata (fino al 2014, la grivna, la valuta nazionale dell'Ucraina, è scesa da 8 a 20 rispetto al dollaro USA). Di conseguenza, il mio reddito reale è diventato di 400-500 USD al mese ed ero completamente depresso. In un modo o nell'altro, ho effettivamente raggiunto il livello 21 o 22 di questo corso online e probabilmente sarei andato oltre, ma ho ricevuto un'e-mail gioiosa dai creatori del sito Web sul reclutamento per lo stage (la versione in lingua russa del corso ha una partnership consolidata con uno stage di programmazione online chiamato topjava (ndr ). Lo stage non è stato un gioco da ragazzi. Mi ha fatto conoscere i framework e le librerie richiesti nella vita reale, su progetti reali. A proposito, neanche la prima volta ho superato lo stage (non avevo abbastanza conoscenze e abilità). Tuttavia, nei tentativi successivi, le mie conoscenze e abilità sono aumentate. Un giorno, mentre esaminavo gli annunci di lavoro per programmatori junior su un noto e rispettato sito Web, mi sono imbattuto nella notizia che un leader di mercato stava iscrivendo studenti agli ultimi corsi Java.A differenza di altre grandi aziende, questi ragazzi non hanno imposto limiti di età (come solo gli anziani). Per questo, hanno i miei ringraziamenti. I requisiti erano semplici: supera un test di screening, supera un colloquio condotto in inglese e sei in corsi esterni (per circa 3 mesi); poi scrivi e difendi il tuo progetto e, se sei abbastanza bravo, entri in corsi interni (per 1-6 mesi), dopodiché potresti (o meno) essere assegnato a uno dei progetti significativi dell'azienda. In effetti, i corsi delle aziende che offrono un impiego successivo sono il modo migliore e meno dispendioso in termini di risorse per entrare nel campo, ma qui ci sono due sfumature: in primo luogo, sono altamente competitivi e, in secondo luogo, non ci sono garanzie di occupazione (ad esempio , potresti non essere assunto a causa di competenze trasversali o inglese debole). IO' Scrivo del concorso in base alla mia esperienza: più di 450 persone hanno fatto domanda per essere testate, circa 50 sono state ammesse ai corsi, meno di 20 sono arrivate a quelli interni. Quanti hanno ricevuto un'offerta, non lo so, ma il fatto che alcuni non l'abbiano fatto è ben stabilito da informazioni privilegiate. In ogni caso, mi sono iscritto per essere testato senza grandi aspettative. Ho pensato che farlo fosse meglio che non fare nulla, quindi ho deciso di provare. Immagina la mia sorpresa quando qualche tempo dopo mi è stato comunicato che avevo superato la prima fase del processo di selezione e Mi sono iscritto per essere testato senza grandi aspettative. Ho pensato che farlo fosse meglio che non fare nulla, quindi ho deciso di provare. Immagina la mia sorpresa quando qualche tempo dopo mi è stato comunicato che avevo superato la prima fase del processo di selezione e Mi sono iscritto per essere testato senza grandi aspettative. Ho pensato che farlo fosse meglio che non fare nulla, quindi ho deciso di provare. Immagina la mia sorpresa quando qualche tempo dopo mi è stato comunicato che avevo superato la prima fase del processo di selezione eè stato invitato a partecipare alla seconda fase: un'intervista condotta in inglese. La mia gioia non conosceva limiti, anche se avevo dei dubbi sulla comunicazione in inglese. Così ho iniziato a preparare:Ho chiesto a mia moglie di condurre diverse interviste con me in inglese, e ho provato e memorizzato le risposte a domande comuni che è molto probabile che vengano poste durante un'intervista (parlaci di te, parlaci della tua esperienza precedente, perché vuoi lavora per noi, ecc.). Ho superato il colloquio e sono stato invitato a partecipare ai corsi. Poiché questa era una reale possibilità di ottenere il lavoro, dopo essermi consultato con mia moglie e aver ottenuto il suo sostegno, ho deciso di lasciare il mio attuale lavoro e concentrarmi completamente sui corsi. In altre parole, sono andato all-in. Per me, i corsi esterni sono stati per lo più frustranti: siamo partiti dalle basi e abbiamo affrontato superficialmente tutti i concetti chiave. Ero anche preoccupato per la competenza dell'istruttore. Era piuttosto inarticolato (per usare un eufemismo) per un istruttore universitario (e per un istruttore part-time per un leader di mercato, e, come si descriveva anche lui, un istruttore che tiene corsi a pagamento per una scuola offline). A volte era difficile capire le lezioni, non perché l'argomento fosse complesso, ma perché la presentazione delle informazioni era terribile. Le mie impressioni sono state rovinate anche da un incidente durante una delle lezioni: uno degli studenti ha posto una domanda, alla quale l'insegnante ha poi risposto. Il problema era che la risposta non era corretta. Apparentemente, non conoscendo la risposta, l'insegnante ha deciso di salvare la faccia davanti al gruppo improvvisando piuttosto che ammettere onestamente di non conoscere/ricordare la risposta. Come è successo, lo studente seduto accanto a me e io conoscevamo la risposta e corresse l'insegnante, ma l'incidente ha seriamente danneggiato la credibilità dell'insegnante ai miei occhi. Fortunatamente, verso la fine del corso, un insegnante diverso ha preso il posto della classe. Aveva una padronanza molto migliore della materia e possedeva abilità pratiche. E la presentazione delle informazioni era incomparabilmente migliore. Tutto nella vita prima o poi finisce, e anche i corsi esterni. Ho scritto il mio progetto finale e ho iniziato a prepararmi a difenderlo, sperando di entrare nei corsi interni. Nonostante non fossi tra i migliori studenti, credevo di avere una possibilità, considerandomi saldamente in mezzo al gruppo. Sfortunatamente, o per fortuna, il destino è intervenuto. Sono arrivato alla mia difesa programmata la mattina presto. Ho fatto una presentazione orale del mio progetto e poi ho lanciato l'applicazione per dimostrarne la funzionalità. Ero pieno di domande, sia teoriche che pratiche. Dopo aver risposto alle domande con vari gradi di successo, ho ricevuto un compito di programmazione aggiuntivo obbligatorio e sono andato in una stanza separata per elaborare la soluzione. Qualche tempo dopo, sono tornato con la mia soluzione ai miei intervistatori. A questo punto, il gruppo di intervistatori era cambiato quasi completamente. Ho presentato la mia soluzione, ma mi hanno informato che non avevo capito il problema e mi hanno invitato a riprovare. Tornai nell'altra stanza. Una volta trovata una nuova soluzione, ho scoperto che nessuna delle persone che mi avevano inizialmente intervistato era ancora lì. Coloro che li hanno sostituiti hanno controllato il mio incarico e hanno detto che poiché nessuno di loro era presente durante il mio colloquio, avrebbero dovuto verificare con quelli che lo erano. Comunque, non so chi abbia seguito o come, o come hanno raccolto feedback sulla mia difesa da persone diverse, ma mi hanno detto che non sono passato. È stato schiacciante. È vero, mi hanno detto che avrei potuto riprovare a difendermi dopo 3 mesi durante il prossimo round di reclutamento: l'unica condizione era che dovessi preparare e difendere un progetto completamente nuovo. Non avevo scelta, quindi ho accettato. Il mio fallimento mi ha fatto precipitare in una grave depressione perché la speranza era che dopo tre mesi avrei già lavorato. Ma ora tre mesi porterebbero solo l'opportunità di difendermi di nuovo, senza alcuna garanzia. E ricorda, ho lasciato il mio lavoro, scommettendo tutto, il che non ha contribuito a creare una visione ottimistica. Certo, qualcosa di positivo è venuto dai corsi: mi sono reso conto che sapevo già parecchio e potevo scrivere un'applicazione funzionante con un frontend decente. Ma non avevo ancora la certezza che l'azienda fosse disposta a pagare per queste competenze. COSÌ,Ho iniziato un'intensa preparazione per la mia seconda difesa , ma ho anche compiuto un altro passaggio importante (e, come si è scoperto in seguito, corretto): ho pubblicato il mio curriculum su diversi siti Web e ho iniziato a sostenere i colloqui. Non posso dire che ci fossero molti richiami, di solito uno o due alla settimana. Anche le mie esperienze durante i colloqui sono variate, da piuttosto disastrose, quando sentivo di essermi dimostrato abbastanza mediocre, a quelle in cui ho completato il colloquio tecnico, ma per qualche motivo non sono andato oltre. Non mi sono scoraggiato, ricordando la massima di qualcuno che nessuno è stato bocciato venti volte di seguito. Ho lavorato sui punti deboli rivelati in ogni intervista. Passai così due mesi, partecipando a 12-14 colloqui. Dopo uno di loro, ho ricevuto la mia prima offerta di lavoro in una piccola azienda, con uno stipendio superiore alla media di mercato. Non mi soffermerò sui dettagli dei miei primi giorni, settimane, ecc. di lavoro: potrebbero essere oggetto di un lungo articolo a parte. Dirò solo che ho superato con successo il mio periodo di prova e lavoro ancora in questa azienda fino ad oggi. Sono molto soddisfatto del team e dello stack tecnologico all'avanguardia. Presto festeggerò il mio primo anniversario in questo lavoro e, sebbene affronti nuove sfide quasi ogni giorno, sono entusiasta di andare a lavorare, perché sto facendo ciò che amo. Bene, c'è il mio post lungo. Colgo l'occasione per ringraziare ancora una volta il creatore di questo corso online per avermi convinto a cambiare radicalmente la mia vita, il team del corso per la sua intelligente implementazione dell'idea. E anche se non ho finito completamente nessuno dei corsi, mi hanno dato le basi e la fiducia in me stesso necessarie per trovare il mio primo lavoro come programmatore. In sintesi, voglio dire a chiunque dubiti delle proprie capacità,ricorda la storia dello studente di scienze umane che ce l'aveva fatta - e fai il primo passo o finisci ciò che hai iniziato se hai già fatto il primo passo. E infine, prima inizi ad andare ai colloqui, meglio è. Non ti sentirai mai pronto, ma potrai ricevere un'offerta solo dopo aver ricevuto alcuni rifiuti. Ricorda, nessuno è stato rifiutato 20 volte di seguito! È un fatto provato!
GO TO FULL VERSION