JavaRush /Java Blog /Random-IT /Il mio modo Java
Рустем Сайфутдинов
Livello 22
Казань

Il mio modo Java

Pubblicato nel gruppo Random-IT

Fascicolo

  • Chi: Rustem Sayfutdinov
  • Lavorato come: -
  • Luogo di residenza: Kazan, Russia
  • Età all'inizio della formazione Java: 25 anni
  • Storia di successo originale
Il mio stile Java-daya - 1

Prologo

Tutto iniziò il 23 gennaio 2003 . Sono tornato a casa dopo la scuola e il club di teatro e ho visto delle scatole sul pavimento. Questo è stato: il mio primo computer: AMD Athlon XP 1800+, 256 MB di RAM, NVidia GeForce 2 64 MB e HDD da 40 GB . Da questo giorno importante inizia una nuova storia della mia vita. Poi ero in prima media. Quale pensi sia stata la prima cosa per cui ho usato il mio computer? Ovviamente ho iniziato a giocare!!! E per circa 4 anni sono uscito dalla vita reale. QUAKE, DOOM, Warcraft, Starcraft, Diablo, Command & Conquer: Generals, Civilization, Silent Hill, Deus Ex, Far Cry... Ci sono stati molti conflitti con mia madre, che non mi ha permesso di giocare per molto tempo e mi ha raccontato farmi fare i compiti. Passare alla scuola e poi all’università non è stato facile. Dopotutto, avevo un mondo virtuale così meraviglioso, dove per ottenere determinati successi devi eseguire azioni predeterminate, puoi sempre avviare un salvataggio precedente e ottenere ciò che volevi. O forse è nella vita reale... Insomma, passavo molto tempo sui giochi. Ma questo aveva anche un certo vantaggio: a volte i giochi non si avviavano, rallentavano o non si installavano. In questi momenti c’era una grande voglia di capire il problema. Quindi ho installato, reinstallato, configurato e ottimizzato tutto ciò che potevo. A partire dalla rielaborazione delle partizioni del disco rigido, modificando il file system e reinstallando Windows, per finire con la messa a punto del registro e dei file di configurazione del gioco. Grazie alle conoscenze acquisite, sono diventato noto tra i miei amici come “programmatore”. Aiutato con i loro computer, reinstallando il sistema operativo, rimuovendo virus, ecc. Un'estate, dopo aver appena completato il mio primo anno di università tecnica, ho deciso di iniziare a vendere le mie competenze. Ho annotato un annuncio in Word dal titolo " Aiuto per emergenze informatiche " e l'ho pubblicato nel villaggio in cui vivo. Ce n’era abbastanza per “ birra e gomme da masticare ”. Al quinto anno, invece di scrivere diligentemente la mia tesi, ho trovato lavoro tramite un conoscente come amministratore in un ufficio piccolo e disonesto. Per la prima volta ho conosciuto il dominio Windows , lavorando in rete, Kerio WinRoute Firewall .

Ammin

Dopo aver conseguito il diploma nella specialità " Computer, complessi, sistemi e reti " nel 2010 , ho visto due percorsi per me: un programmatore o un amministratore. L'esperienza di programmazione era limitata a laboratori, corsi e lavori di laurea. Allora sapevo già cosa fossero gli array, i loop, le istruzioni condizionali e le classi. Ci sono stati tentativi di imparare a programmare mentre era ancora a scuola. Ma GTA ha interrotto con successo questo desiderio. Tuttavia, vale la pena notare che ho codificato con notevole piacere. Ho aiutato i miei compagni di classe con i laboratori. Ma poiché avevo più esperienza in materia amministrativa, ho scelto questa strada. In uno dei miei prossimi lavori, decisi che era ora di dedicarmi a Linux . La sera mi sedevo al lavoro e sperimentavo. Il risultato è stato la creazione di un gateway Internet con firewall, port forwarding, connessione a Internet tramite Wi-Fi , connessione a una VPN . Non molto bello, ma andrà bene per iniziare.
Grazie a queste conoscenze, nel 2011 ho ottenuto un lavoro come capo del dipartimento di implementazione e supporto. Avevo 4 persone subordinate a me. Stavamo implementando un Thick Client in Java Swing nei negozi e nei magazzini di un'azienda di gioielleria. Ora capisco che cosa interessante stavamo implementando! Ma poi ero poco interessato alle sottigliezze dell'implementazione di questo software.
Vivevo a Kazan, ma da molto tempo volevo provare a condurre uno stile di vita più indipendente e trasferirmi a “ Nerezinovaya ”. Alla fine del 2012 ci sono riuscito senza nemmeno cambiare lavoro. Mi è davvero piaciuto lì! Questa è la metropolitana! Queste strade gigantesche con un flusso veloce di auto costose! Questi enormi flussi di persone sono ovunque! Ero orgoglioso di essere riuscito a realizzare questo trasferimento.
Dopo aver concluso il progetto, a metà del 2013, ho deciso che era giunto il momento di abbandonare la configurazione di computer, supporto tecnico e amministrazione. Ho deciso di dedicarmi all'analisi o alla gestione dei progetti. È stata trovata una posizione in cui avrei potuto svilupparmi in queste aree. E lì ho capito... Cosa non vorrei mai fare nella mia vita!
C’è stato un momento in cui, mentre riordinavo le pagine del rapporto sul contratto governativo nell’ordine corretto, ho improvvisamente realizzato cosa stava succedendo. Oh mio Dio, ho già un quarto di secolo!!! Sto frugando con pezzi di carta, avendo precedentemente copiato e incollato intellettualmente il testo dagli stessi pezzi di carta per l'ultimo periodo di riferimento!!! Ma prima facevo cose interessanti con i server, organizzavo processi di lavoro, aiutavo le persone...
Questo è stato un punto di svolta nella mia vita. Una sorta di “crisi professionale”. Sono stanco di fare manutenzione. Volevo creare e creare qualcosa da solo.

Giava

Mi sono ricordato che ero abbastanza bravo a programmare al college. Mi sono ricordato che i programmatori guadagnano bene. Mi sono ricordato che esiste un fantastico linguaggio Java , un grosso client su cui abbiamo implementato e i cui programmi possono essere eseguiti su qualsiasi sistema operativo. La mia ricerca di materiali su Java mi ha portato a Java Rush . Questo accadde intorno all'ottobre del 2013 . Il modo in cui sono state presentate le informazioni e l'enorme numero di esempi mi hanno davvero attratto. Sono andato a lavorare, mi sono seduto al computer, sono tornato a casa dal lavoro e la sera mi sono seduto di nuovo al computer per studiare. A volte restavo seduto fino a tarda notte. Ho superato i primi 10 livelli molto facilmente , perché... molti concetti mi erano familiari. Per avere più tempo per studiare, ho smesso di andare in palestra, ho preso dei pesi e mi sono allenato con quelli a casa. Verso dicembre avevo programmato di iniziare a cercare lavoro non prima della fine di marzo. Ma ho iniziato a prestare particolare attenzione al lavoro. Sì, già la odiavo semplicemente. A volte svolgevo sfacciatamente attività Java Rush direttamente sul mio computer di lavoro durante l'orario di lavoro. Il risultato non si è fatto attendere: all'inizio di gennaio 2014 mi hanno informato che avrei lavorato per loro solo fino alla fine del mese. È stato uno shock, ovviamente. La consapevolezza che sarei rimasta senza reddito di base mentre dovevo pagare per l’alloggio era molto preoccupante. Ho affrontato diligentemente articoli come " 100 domande di intervista per Java Juniors " pur continuando a studiare in Java Rush .

Colloquio e compito di prova

Ho raggiunto il livello 17 circa quando sono andato per la prima intervista. In una delle organizzazioni mi hanno affidato un compito di prova da scrivere: un'applicazione che determinerebbe se fosse possibile disporre tutte le tessere del domino su una riga. Se sì, genera questa soluzione. Ispirato, mi sono seduto al computer per scriverlo e... sono rimasto inorridito! Nelle condizioni di serra di Java Rush era molto comodo sedersi e scrivere codice. Ma qui abbiamo dovuto inventare tutto da zero, da zero, per così dire! È qui che sono venuti i dubbi e le esitazioni. Devo anche diventare un programmatore? È stato molto difficile per me scrivere codice! Non sapevo davvero nulla delle cose base di Java, la mia conoscenza era molto superficiale. E non era chiaro come risolvere questo problema. Ma sono riuscito comunque a trovare un algoritmo risolutivo su Internet utilizzando i grafici: tutto si riduceva alla ricerca del percorso di Eulero ( questo proviene dalla teoria dei grafi, ndr ).
Il mio collega del mio lavoro precedente mi ha sempre aiutato con Java, quello che ha scritto il suddetto Thick Client in Java. È stato lui ad aiutarmi a risolvere il problema utilizzando il metodo ricorsivo. Ho inviato l'attività per la revisione... 2 lunghe settimane di attesa per una risposta...

Primo lavoro

...Ma è andato tutto bene! Mi hanno preso, ce l'ho fatta! Il 5 marzo 2014 ho iniziato a lavorare come sviluppatore Java . La felicità non ha avuto limiti, soprattutto perché sono finita in un’azienda che si occupa di pagamenti elettronici. E trattano molto bene il personale. Basta guardare il loro ufficio chic e il caffè e il tè gratuiti: allora era una novità per me.
Mi sono seduto per sistemare il progetto... E mi sono accorto che non capivo niente! Servlet, filtri, parser XML, query SQL, commit di repository, get e post HTTP, test unitari... Tutto questo era nuovo per me. Sì, ho imparato solo di recente come usare le interfacce!
Ci sono stati momenti in cui guardavo il codice, scalavo le catene delle chiamate ai metodi, andavo sempre più in profondità e mi rendevo conto di aver dimenticato da dove avevo iniziato! Di tanto in tanto pensavo di alzarmi e scappare! E poi le allergie primaverili sono arrivate insieme a problemi nella mia vita personale. Il cervello semplicemente si rifiutava di percepire qualsiasi cosa. Insomma, non ho superato il periodo di prova. Era dannatamente stressante. Non ho fatto quello che sognavo. L’autostima è stata gravemente danneggiata. Apparvero anche i capelli grigi.

Peregrinazioni e prove

Tuttavia ho deciso di continuare ciò che avevo iniziato. Nel luglio 2014 sono stato assunto per lavorare nella mia nativa Kazan, in un'organizzazione internazionale. Lì ho scritto Frontend in Swing . Il programma trasferiva i dati da un DBMS all'altro . Oh, e poi ho tormentato il caposquadra e gli anziani con la mia scarsa conoscenza della scrittura di codice Java ! Tuttavia, questo lavoro mi ha permesso di affinare le mie capacità, apprendere tecniche di base e acquisire conoscenze. Da parte mia, ho anche apportato un paio di innovazioni serie. Durante questo periodo, ero selvaggiamente sopraffatto dai dubbi. Trovavo ancora difficile il lavoro, mi mancavano perseveranza e concentrazione. Ma ho superato il periodo di prova, anche se con difficoltà. Ma nel febbraio 2015 , nel momento più critico, si è verificata un’ondata di licenziamenti. Mi hanno licenziato perché ero il più inesperto e poco brillante, e il mio collega perché era il più vecchio e già titubante. Plus plus per il misuratore di stress. Sapevo di essere ancora completamente nuovo nel mondo della programmazione e durante una crisi poche persone avevano bisogno di nuove persone nello staff. Ho avuto solo 10 mesi di esperienza nel mio gattino . Neanche particolarmente riuscito. A marzo, mentre cercavo, accadde un fatto molto interessante. Mi hanno scritto sui social network chiedendomi se volevo andare a insegnare Java . Questo mi ha sorpreso molto. Più tardi si è scoperto che il responsabile delle risorse umane, quasi per caso, mi ha letteralmente puntato il dito verso il cielo. Dopotutto, nel mio profilo non erano elencate nemmeno le parole Java o programmazione. Tuttavia, poiché amo tutti i tipi di avventure, ho accettato di venire per un colloquio in cui mi è stato chiesto di scrivere un piccolo programma su un quaderno. L'ho fatto, ma ho notato a me stesso i pregiudizi di questo metodo di verifica della conoscenza. Mi è stata offerta una lezione di prova. Ho preparato, scritto la mia presentazione e tenuto la lezione con successo. Al termine, mi è stato detto che andava tutto bene, ma le lezioni dovevano essere rifatte per gli scolari dai 12 ai 18 anni . L'ho fatto, ma di conseguenza hanno scelto un insegnante più esperto, ma mi contatteranno nel nuovo anno accademico, in autunno. Non ero particolarmente turbato. Ad aprile ho trovato lavoro presso l'ufficio IT multidisciplinare più famoso e più grande di Kazan, dove ho lavorato su vari progetti. Ho migliorato le mie competenze in SQL , servlet, ecc. Inoltre, ad agosto ho preso l'iniziativa di un collega per iniziare a prepararmi per l' OCA . In quel momento mi sono reso conto che non conoscevo affatto le basi di Java ! Tutti questi problemi con l'inizializzazione dei costruttori durante l'ereditarietà, solo un cambio pazzesco, tempo di compilazione e runtime. Si scopre che ho iniziato a studiare tutto questo poco più di un anno dopo aver iniziato a lavorare come programmatore! Autunno 2015Gli organizzatori del corso mi hanno contattato e mi hanno detto che ora si stanno preparando a lanciare un corso per adulti. Si è scoperto che avrei dovuto creare da solo tutto il materiale didattico: teoria, compiti pratici in classe, compiti a casa. Questa circostanza ridusse notevolmente il mio entusiasmo. Dopotutto, mi aspettavo che avrei semplicemente passato il materiale dal manuale a me stesso e poi lo avrei presentato in qualche forma in classe. Tuttavia, ho visto diversi vantaggi in questa attività. In primo luogo, migliorare e consolidare le proprie conoscenze. Non per niente si dice: se vuoi imparare o capire qualcosa, spiegala a qualcun altro! In secondo luogo, un motivo per superare la paura di parlare in pubblico. In terzo luogo, una buona opportunità per allenare la tua memoria. In quarto luogo, questo migliorerà la mia situazione finanziaria, perché... Gli junior sono pagati poco, ma era da tempo che volevo cambiare la macchina, perché la mia Nexyusha è già completamente marcia. E in quinto luogo, fa piacere alla tua vanità quando ti rendi conto che qualcuno potrebbe aver bisogno della tua conoscenza ed esperienza.
I corsi sono iniziati a novembre ed è stato un viaggio fantastico! Lavora in due posti. Era necessario trovare e preparare materiale, riflettere sugli argomenti delle lezioni e sui compiti a casa. Questo occupava assolutamente tutto il mio tempo libero. A proposito, ho promosso attivamente JavaRush. Come compito a casa, mi sono stati assegnati alcuni livelli da completare su questo meraviglioso sito. Naturalmente fino al 10° livello gratuito.
Ma ho ulteriormente consigliato l'acquisto di un abbonamento. Perché penso che Java Rush sia ottimo per abituarsi agli esempi. Ma la teoria necessita di essere ulteriormente sviluppata. Questo primo corso di quattro mesi è stato trascorso in costante tensione. Ma! Ho migliorato notevolmente la mia conoscenza di Java . Auto cambiata. Ho smesso di aver paura del pubblico sconosciuto: come scrivevano nei libri di retorica, ho cominciato a sballarmi durante la lezione, cosa che non si può dire del processo di preparazione. Sì, è stato un periodo molto difficile in cui non ho avuto il tempo di comunicare con gli amici. Beh, non credo che valga la pena menzionare la mancanza di vita personale. Ho lavorato nella grande azienda di Kazan sopra menzionata per un anno e un mese. Lì andava tutto bene in termini di crescita professionale finché la guida della squadra non se ne andò. Mi ha guidato e mi ha affidato diversi compiti interessanti, nonostante i miei frequenti errori. Con la sua partenza si è perso il legame tra management, sviluppatori e analisti. In breve, nel progetto è iniziato il caos completo. A proposito, solo verso la fine del mio lavoro in questa organizzazione ho smesso di pensare alla correttezza della mia scelta del percorso da sviluppatore. Prima mi accompagnavano sempre. Con la consapevolezza di ogni difficoltà, del ritardo nella risoluzione di un problema, di un bug nella mia correzione di un altro bug. Era molto urgente.
Ma ricordo che all'inizio del mio viaggio avevo deciso fermamente che avrei preso la decisione di continuare o terminare il percorso di sviluppatore solo dopo 5 anni. Tutto stava andando davvero difficile per me. Avevo costantemente la sensazione che le persone intorno a me fossero molto più intelligenti di me, che non riuscissi a cogliere le cose così velocemente come loro. Probabilmente non valeva la pena pianificare tutto questo.

Tempo presente

Nel giugno di quest'anno ho trovato un lavoro dove lavoro ancora oggi. Stiamo lavorando ad un servizio molto interessante per il backup dei dati cloud da servizi come Google Disc, Dropbox, Office365 ai server Amazon . Vorrei sottolineare che se non fosse stato per un attento studio del tema del multithreading per lo svolgimento delle lezioni, non avrei potuto sostenere un colloquio con questa organizzazione, perché i compiti sono stati assegnati appositamente per questa parte. Ho deciso di tornare a prepararmi per l'OCA . Alla fine dell'inverno ho trovato ottimi materiali per questo, ma non ho trovato il tempo per prepararmi. E così, tra il 2° e il 3° flusso di studenti, ho avuto un mese libero per prepararmi. Ovviamente non avevo tempo prima dell’inizio del corso. Ma ha comunque raggiunto il suo obiettivo: ha superato l' esame Oracle 1z0-808 con l'81% di risposte corrette e il 65% di superamento. Volevo, ovviamente, l'85% . Ma bere prima più di un litro d’acqua, in modo che “il cervello potesse pensare meglio”, mi ha costretto a finire mezz’ora prima senza la possibilità di ricontrollare tutto. Tuttavia, sono ancora orgoglioso di questa certificazione di successo. A fine gennaio 2017 ho intenzione di andare a fare il test OCP . La certificazione non serve a molto se ci pensi. Per me personalmente, questa è un'opportunità per consolidare le basi. Perché A volte ho bisogno di rispondere a domande complicate degli studenti. PS Sono uno sviluppatore da quasi 2 anni e mezzo, ma non mi considero un programmatore in quanto tale. So quale enorme quantità di informazioni devo passare attraverso me stesso (algoritmi, DBMS , strutture dati, tecnologie web, pattern, front-end, framework, ecc.). E voglio continuare a studiare Java Rush per lo sviluppo generale, fortunatamente l'abbonamento è illimitato. Non c'è fine al lavoro! E, cosa più importante, mi piace. Voglio saperne di più, scrivere codice più velocemente e meglio. Il mio sogno è diventare eventualmente un team leader o un architetto. Ma c'è così tanto da fare prima! Non resta che gestire correttamente il proprio tempo e procrastinare meno.
Commenti
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION