En framgångssaga.  20 timmars programmering per vecka, en magisterexamen och ett personligt liv - 1 Efter att ha läst om vad som skulle göras bestämde jag mig för att göra en plan för hur jag skulle plugga för att nå mitt mål och avsluta kurserna, eftersom jag inte hade tid att plugga i lugn takt. Mitt mål var att lära mig snabbt, men inte så snabbt att jag förstörde lusten, vilket gav min hjärna lite tid att slappna av. För den belastning som jag ville ta mig an skulle vara ett hinder för mig.

Till att börja med ska jag berätta lite om mig själv

Jag är 27 år gammal. Innan jag började lära mig Java läste jag tillämpad matematik på matteavdelningen. Det verkar som att jag borde vara bra på programmering, om inte utmärkt. Men detta var inte fallet för mig, eftersom jag saboterade alla mina kurser där programmering kom upp, även om jag hade ren tur - jag skrev ingen egen kod. Så det visade sig att jag var långt ifrån programmering. Uppenbarligen, i vårt land kommer du inte att tjäna mycket pengar med en matematikutbildning, förutom som programmerare ( Roman kommer från Ukraina — red.anm.). Och det var därför jag bestämde mig för att fortsätta med just det. Och när det hände bestämde jag mig för att lära mig Java. Detta var inte resultatet av någon marknadsanalys eller en sökning efter antalet lediga jobb eller efterfrågan på arbetsmarknaden. Det blev bara så. Och när jag bestämde mig för att lära mig att lära mig Java, stötte jag på den här kursen. Jag ville egentligen inte bara lära mig av böcker, men jag var inte heller särskilt exalterad över heltidskurser, eftersom de kostar mycket pengar, men den verkliga fördelen är liten. Så att lära sig online var den bästa lösningen för mig. Efter att ha klarat de första 3 nivåerna insåg jag att jag gillade kursen och kunde köpa ett abonnemang. Dessutom fick jag ett kampanjerbjudande och köpte min för halva priset. Detta var i slutet av augusti/början av september 2015.

Min utbildningsplan

Efter att ha läst om vad som skulle göras bestämde jag mig för att göra en plan för hur jag skulle plugga för att nå mitt mål och avsluta kurserna, eftersom jag inte hade tid att plugga i lugn takt. Mitt mål var att lära mig snabbt, men inte så snabbt att jag förstörde lusten, vilket gav min hjärna lite tid att slappna av. För den belastning som jag ville ta mig an skulle vara ett hinder för mig. Så här bestämde jag mig:
  • Jag behöver plugga fem dagar i veckan (mån-fre).
  • Under helgen ska jag göra vad som helst förutom att plugga Java.
  • Varje pass kommer att pågå i totalt 4 timmar, med 15 minuters paus mellan varje timme, för att gå, koppla av och göra te.
Sammanlagt 20 timmar i veckan. Inte illa, va? Dessutom var jag tvungen att gå till universitetet ibland, eftersom jag fortfarande gick på forskarskolan. I december var jag redan på Level 20 och trodde att jag visste ganska mycket, men jag upplevde också kriser när inget fungerade och det verkade som att jag inte kunde gå längre. Så mycket att det kom en tid då jag helt enkelt inte kunde tillgodogöra mig information om samlingar. Först efter en helg utan programmering kom förståelsen.

Flytta till en ny nivå

Tre månader började jag mina studier, jag pratade med en vän om vad mer jag behövde veta för att få ett jobb. De obekanta orden han uttalade, som "databaser" (skräck!), och mycket mer, lät mig veta att jag behövde accelerera och göra ännu mer. Det är uppenbart att det inte räcker att kunna Java-grammatik för att jag ska få ett jobb. Jag började accelerera i olika riktningar:
  • Jag köpte mig boken "Head First Java". Det rekommenderas på nivå 4 av kursen. Men på något sätt läste jag inte noga och missade det här. Den lär ut samma saker, men från en annan vinkel, vilket hjälper dig att förstå dem bättre och på en djupare nivå. Jag rekommenderar det.
  • Jag började leta efter och gå på alla relevanta lokala evenemang i min stad, även om jag inte förstod så mycket. Men så småningom insåg jag att det inte var förgäves att göra detta. De hjälpte mig mycket.
  • Jag kombinerade mina studier med att läsa programmeringsmedia för att följa IT-löner, användbara evenemang och läsa artiklar om utvecklarens karriär m.m.
  • Jag hittade korta och informativa videohandledningar om MySQL på YouTube. Jag rekommenderar dem.
  • Du måste också förstå vad HTML och CSS är. Det finns ingen väg runt dem.
  • Jag registrerade mig på LinkedIn, där jag började marknadsföra mina kunskaper och angav att jag letade efter ett jobb (jag kan ha tur och bli hittad av någon). Jag lade till alla som vänner urskillningslöst, vilket utökade min kontaktkrets. För att låta dig veta hur mycket, jag har nu mer än 10 000 vänner på LinkedIn. Detta är nödvändigt för att börja. Och det hjälpte. Ett team av Android-frilansare ville lägga till en nybörjare och de kontaktade mig. Jag inser att den här händelsen var utöver det vanliga, men det hände.

Första misslyckanden

Parallellt med studierna började jag förstås leta efter en praktikplats så att jag så småningom kunde bli anställd. Jag blev inbjuden till en intervju för en praktikplats. Efter att ha pratat med HR kallades en engelsklärare fram till mig och vi två hade ett "samtal". På den tiden var jag inte alls förberedd, och jag lyssnade mer än jag pratade. När jag blev ombedd att berätta om mig själv mumlade jag något, men det var inget speciellt. Men när jag pratade med den tekniska ledaren svarade jag på några frågor och visste inte svaren på många andra. När jag nämnde att jag studerade på CodeGym ( den ryskspråkiga versionen av kursen — red.anm.), sa han att en annan student från den här kursen hade kommit före mig. Jag var på nivå 27, men han var redan på nivå 34. Efter att vi pratat sa han att de skulle skicka mig en testuppgift, som skulle avgöra om jag var en lämplig kandidat. Jag avslutade det på något sätt, men inte med all funktionalitet. Efter ett tag skrev de till mig och sa att jag inte passar dem... Det gjorde ont, men jag bestämde mig för att lära mig av det och jag gick vidare.

Första jobb

Som jag redan sa, ungefär en och en halv månad efter att jag satt ihop min LinkedIn-sida, kontaktade någon Android-utvecklare mig med en inbjudan att arbeta med ett team. Det är klart att vi pratar om en låglönetjänst. Vi träffades och jag fick ett jobberbjudande. Visst var lönen dålig, men jag hade ingen annan inkomst och var glad över den. I slutet av januari började jag utveckla Android i lägenheten hos en av teammedlemmarna. Allt var nytt och annorlunda. Men på något sätt, på något sätt, jobbade jag och producerade något. Det var läskigt och jag förstod inte allt — det här var inte CodeGym-uppgifter. Jag var tvungen att göra allt, läsa och lära mig vad och hur. Jag gjorde ett testprojekt som skulle kunna bli något mer med tiden. Och så höll det på till maj. Sedan började vårt lag falla isär på något sätt. Alla såg detta och började söka arbete.

Söker nytt jobb

Eftersom jag inte visste hur jag skulle hitta ett jobb, bestämde jag mig för att skicka ut mitt CV till alla företag i min stad. För att säkerställa att allt såg bra ut skrev jag mitt CV på engelska, vilket är den enda vägen att gå. Visst var det mycket ludd. Eftersom jag inte hade så mycket att skriva skrev jag massor och massor. För varje mejl skrev jag även ett personligt brev (rekryterare älskar detta), där jag angav exakt vilken position jag ville ha. Det visar sig att folk ofta skickar ett CV utan en tydlig uppgift om tjänst de söker. Mitt följebrev var också på engelska. Jag glömde helt bort: du måste ha mycket starka engelska kunskaper. Faktiskt, om du inte kan läsa ett svar på Stack Overflow, kommer du aldrig att klara det. Det finns inget för dig att göra i programmering. Jag förberedde ett svar på engelska för den favoritintervjufrågan: " Jag behövde hitta ett jobb — allt annat var inte längre viktigt. Jag fick frågan om min förståelse av databaser, om hur man skapar tabeller för vissa situationer. Jag pratar om SQL-databaser här. Ingen frågade om NoSQL.

Första erbjudandet

Ett företag skrev till mig med ett avslag. Sedan en till. Det fanns två företag kvar: ett med öppning för en Android-utvecklare och det andra för Java. Android-företaget ringde, sa att jag passade bra och gav mig ett erbjudande. Seger! Jag var mycket glad. Men jag hade fortfarande inte fått något samtal om Java-positionen. Jag sprang runt utan att veta vad jag skulle göra, så jag bad att få vänta en dag med att ge mitt svar, så att jag kunde ringa för att ta reda på Java-utvecklarpositionen. Jag ringde Java-företaget och sa: "Jag har fått ett erbjudande, men jag ville veta om du har ett beslut." Jag blev inbjuden till kontoret för att prata och de sa till mig att jag skulle vilja ha resultatet av samtalet. De hade rätt. Efter vårt samtal lade detta andra företag ett erbjudande som jag accepterade. PS Du måste sträva, sträva, sträva och aldrig ge upp! PSS Jag avslutade inte hela kursen. Jag slutade på nivå 30. Och jag var på nivå 27 när jag fick jobbet. Jag kan faktiskt säga att från och med nivå 20 måste du söka arbete och växa på ett sätt utanför Java. Få åtminstone rudimentära färdigheter med hjälp av projektautomatiseringsverktyg (Ant, Maven, Gradle). Det här är inte svårt, men det är väldigt nödvändigt. Alla som gillade artikeln och tyckte att den var användbar, betygsätt den och lämna några kommentarer. Följ mig också på GitHub: romankh3