JavaRush /Java Blog /Random-IT /Una storia per gli over 30

Una storia per gli over 30

Pubblicato nel gruppo Random-IT
E così, ci ho messo le mani sopra e ho trovato il tempo per condividere la mia piccola storia.

Prologo.

Per cominciare, ho 30 anni, la mia istruzione principale è l'istruzione superiore in chimica (non entrerò nei dettagli), ho lavorato in fabbrica per quasi 8 anni. Il lavoro in realtà era piuttosto interessante, ma, guardando i miei colleghi, ho capito che non volevo andare in pensione e lavorare qui per *vent'anni, non è così che voglio passare la vita. Voglio anche aggiungere che ho una famiglia, due figli (il maggiore ha 6 anni, il più piccolo un anno) e, secondo i classici, un mutuo. Alla fine ho deciso di provare ad andare in un altro posto, in un altro stabilimento, dove la paga è più alta e c'è una crescita professionale. Avevo già messo radici in fabbrica, è stata dura andarsene, ma ho deciso di farlo. Il viaggio a San Pietroburgo è durato un mese. Ho lavorato ufficialmente lì per una settimana, mi sono reso conto che nel nostro Paese la situazione con le fabbriche era, per la maggior parte, triste e sono tornato nella mia città natale. Non volevo tornare indietro, mi sembrava che questo fosse un passo indietro. È stato allora che ho deciso che se cambio la mia vita, allora cambiala radicalmente! Per circa una settimana ho pensato a quale linguaggio di programmazione scegliere e, in effetti, la scelta è caduta su Java . Successivamente ho iniziato a cercare corsi. In effetti di buoni corsi ce ne sono tanti, alcuni anche a prezzi ragionevoli, ma avevo un problema: avevo tanta voglia e tempo per studiare, ma il margine finanziario era per un massimo di 3-4 mesi . Tutti i corsi che mi piacevano duravano sei mesi o più con due lezioni a settimana (il più delle volte). E poi un'amica mi ha consigliato JavaRush , dicendo che aveva sentito che era un'ottima risorsa. Ho visto che tutto ciò di cui avevo bisogno era qui:
  • abbonamento con materiali e attività.
  • nessun limite di tempo: potevo studiare esattamente quanto me lo permettevano i miei orari (ed erano gratuiti) e i miei desideri (e, come ho scritto sopra, ce n'erano in abbondanza).

Parte 1: Alla ricerca della conoscenza.

Il 26 novembre 2019 mi sono iscritto e ho iniziato le lezioni. Dirò subito che a volte c'erano giorni in cui passavo fino a 14 ore a studiare, a leggere tutti i link correlati, a cercare soluzioni più belle (senza cercare nella Guida). Solo quando ho pensato che la mia soluzione fosse ottimale, ho guardato la Guida e molto spesso sono rimasto sorpreso dal fatto che avrebbe potuto essere risolta in modo più bello e conciso. A fine gennaio, raggiunto il livello 17, ho deciso di iniziare a frequentare i servizi sociali, allenando le mie competenze e vedendo cosa in genere veniva richiesto dal mercato. In effetti, nessuno mi ha veramente risposto, ma c'era un ufficio che mi ha accettato per uno stage condizionatamente gratuito: il primo mese era gratuito, il secondo e il terzo - con un piccolo stipendio). Successivamente avrebbe dovuto esserci la previdenza sociale basata sui risultati di tre mesi e, dopo aver completato con successo, l'occupazione.

Parte 2: Corriamo in battaglia.

Lo stage consisteva nella scrittura di un plugin per Chrome con un back-end in Java per automatizzare le attività di routine di un reparto interno dell'azienda. Ho avuto un mentore eccellente con molta conoscenza, penso che anche questo sia importante. Anzi, per non entrare nel dimenticatoio, scriverò subito quale stack è stato utilizzato, e alla fine dell'articolo darò diversi link che mi sono stati molto utili.

Pila:

Java 11 (il progetto è stato scritto completamente da zero), Spring (Boot, Security, OAuth2); MongoDB è stato utilizzato come base; Per coprire gli autotest ho utilizzato Assertj, Mockito, Spring-boot-starter-test e ho lavorato utilizzando il popolare GitHub Flow (articolo in russo , nell'originale ). Qui e oltre cercherò di fornire i collegamenti all'originale e alla traduzione. Si consiglia, ovviamente, di leggere l'originale, ma se ciò non è possibile, leggere la traduzione. Questo è il momento di consigliare di imparare l'inglese. Ho un livello A2, ma cerco di leggere articoli in inglese (ovviamente non senza avvalermi di un traduttore). Questa è stata proprio la difficoltà maggiore all'inizio del progetto di stage, perché era necessario lavorare con un CRM di terze parti, che aveva tutta la documentazione in inglese. Inoltre, quando si lavora con Spring, è meglio leggere la documentazione originale, è molto buona e dettagliata, non servono nemmeno guide in lingua russa, e in generale quasi tutta la documentazione è in inglese (un po' da Captain Ovvio). Il mentore ha anche detto di scrivere tutti i commenti sul codice e la documentazione API in inglese, quindi lo ripeto ancora una volta: impara l'inglese! Anche se non intendi lavorare con clienti stranieri o viaggiare all'estero, questa abilità semplificherà notevolmente il tuo apprendimento e il tuo sviluppo.

Parte 3: Epilogo.

Questa parte sarà molto più breve :) Alla fine dello stage, ho superato la previdenza sociale, ho trovato un lavoro e ho continuato a lavorare su questo progetto. Nell'ambito dello stage, si supponeva che fosse implementata la prima fase e ce n'erano, si potrebbe dire, tre in totale. A causa dell'inizio della pandemia, molti progetti commerciali sono scomparsi e ho implementato tutte le fasi e le idee/desideri che avrei potuto avere per questo progetto. C'erano altri compiti, ma questa, come si suol dire, è un'altra storia.

Parte 4: Lieto fine, anche se è lontano dalla fine ;)

A metà luglio mi hanno chiamato e mi hanno chiesto se cercavo lavoro. Il curriculum era appeso a hh, sebbene non fosse stato aggiornato da molto tempo. Ho deciso di provare io stesso, ho attraversato 3 fasi: un compito di prova, un colloquio tecnico, un colloquio con la direzione, mi hanno inviato un'offerta e... Era un'offerta che non potevo rifiutare. A proposito, assicurati di leggere l'articolo su quali tipi di società esistono e prova a scegliere quella più adatta a te. Capisco, ovviamente, che nella prima coppia proverai ad arrivare dove ti portano, ma comunque. Il mio primo lavoro era personale esterno e ora è un lavoro di drogheria (al momento in cui scrivo sto lavorando solo il secondo giorno). Hanno anche assunto un junior per la posizione, ma non sono affatto arrabbiato, perché c’è spazio per crescere sia in termini di conoscenze che di denaro.

Epilogo.

Quindi, amici, non scoraggiatevi, l’importante è decidere e non deviare dal proprio percorso. Nel mio caso, avevo una grande responsabilità nei confronti della mia famiglia e il desiderio di cambiare qualcosa nella mia vita, di fare ciò che mi piaceva davvero. La cosa particolarmente bella di quest'area è che puoi salire la scala della carriera indipendentemente dal fatto che ci sia un posto vacante più alto in azienda, se un pensionato che ha lavorato per *vent'anni se ne sia andato e se tu abbia un braccio abbastanza peloso per scalarlo posto vacante. Nel nostro campo, tutto è nelle nostre mani!

Articoli che vorrei condividere:

  • Comprensione dell'architettura ( in russo e nell'originale ). Personalmente ho letto questo articolo 4 volte mentre stavamo solo sviluppando l'architettura della futura applicazione. Scrivo al plurale, poiché tutto è stato controllato e inviato per ripetute modifiche dal mentore (ha effettuato una revisione del codice). La prima volta non ho capito molto, poi l’ho letto 3 mesi dopo, e allora avevo già capito perché era così. Poi l'ho riletto altre 2 volte, per così dire, per consolidare e assimilare appieno tutte le informazioni.
  • Formazione interattiva su come lavorare con Git .
  • Consiglio a tutti di imparare a lavorare con i flussi. Questa è una cosa davvero interessante: spesso puoi sostituire un'enorme quantità di scrittura con un piccolo flusso. Per ricordarmi come lavorare con i flussi, avevo sempre aperto questo articolo .
  • Esiste una documentazione dettagliata per lavorare con Spring, quindi non fornirò un collegamento ad essa, ma per qualche motivo non ho incontrato immediatamente un uomo di nome Evgeny Borisov, alias Spring the Ripper . Ecco una presentazione e un'analisi molto interessanti di come funzionano i contenitori, ecc. Mi dispiace davvero di non averlo trovato subito, molte cose sarebbero state più chiare nella fase iniziale. Consiglio in particolare non solo di ascoltare, ma di scrivere codice allo stesso tempo e di mettere tutto, per così dire, nella memoria muscolare.
  • Bene, poiché ho lavorato con un database non relazionale e la maggior parte delle aziende (soprattutto quelle di grandi dimensioni) lavora con SQL, nel tempo libero ho provato a risolvere almeno un paio di problemi sulla creazione di query SQL. Ci sono molti siti diversi per questo, ma mi è piaciuto questo , con problemi e un libro di testo per studiare.
  • Consiglierei anche di leggere i test di scrittura (Assertj, Mockito), ma non ricordo nessun buon articolo, solo documentazione.
  • E quando sviluppi un'applicazione (ma questo non è proprio per i principianti), prova a utilizzare i modelli di progettazione . Almeno familiarizza con gli schemi conosciuti in diagonale, sarà utile nella fase iniziale.
Ancora una volta auguro a tutti buona fortuna in questa faccenda! Se avete domande chiedete, vi risponderò se possibile.
Commenti
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION