Ger en matematikexamen ett försprång när man lär sig programmering? Allt beror på hur mycket du lägger ner på relaterade ämnen.

Det här är historien om Roman, som kommer från Ukraina. Idag är han senior Java-utvecklare. I mitten av 2015 var han student och arbetade med en masterexamen i tillämpad matematik. Den ursprungliga historien är här . Nedan hittar du de viktigaste delarna.

Med tanke på verkligheten i sitt hemland var Roman säker på att en utbildning i matematik bara skulle tjäna honom bra pengar som programmerare. Men hans val att bli Java-utvecklare var mer slumpmässigt snarare medvetet. Han ville inte bara studera från böcker eller på heltidskurser: vår student bestämde sig för att de kostade för mycket pengar, men gav lite nytta.

Och så hittade han vår Java-kurs. Detta var i slutet av augusti/början av september 2015.

En Java-studieplan

När han förberedde sin inlärningsplan, utgick Roman från det faktum att han inte hade tid att busa runt.

Han satte upp ett mål: skaffa kunskap snabbt för att behålla intresset för att lära, men inte så snabbt att han skulle överbelasta sin hjärna.

Följaktligen beslutade han:

  1. Studera fem dagar i veckan (från måndag till fredag).
  2. Gör allt utom att plugga under helgen.
  3. Tilldela 4 timmar för varje studietillfälle - efter varje timme, ta en 15 minuters paus för att gå, koppla av och göra te.

Totalt 20 timmar i veckan. Inte illa, va? Dessutom var Roman tvungen att gå till universitetet ibland, eftersom han fortfarande gick på forskarskolan.

I december hade han slutfört halva kursen och bestämde sig för att han redan hade lärt sig enormt mycket, även om det fanns krisögonblick då hans hjärna vägrade att ta emot ny information, och bara en helg utan någon programmering hjälpte honom att göra framsteg.

Flytta till en ny nivå

Tre månader efter att Roman började sina studier började han undra vad mer han behövde veta för att få jobb. För att få råd blev han programmerare som han känner.

Och oj vilka obekanta ord han hörde, som "databaser" (skräck!), och mycket mer, lät honom veta att han behövde öka tempot och göra ännu mer. Dessa tips kommer säkert att hjälpa dig också.

  1. Läsa böcker. I Romans fall var "Head First Java", som rekommenderas för mycket gröna nybörjare, användbar. Det hjälpte honom att bättre förstå några av nyanserna.
  2. Nätverk. Du bör besöka alla relevanta programmerarhangouts i din stad (och på andra ställen). Även om mycket är oklart så är det så man fördjupar sig i miljön.
  3. IT-webbplatser. Media för programmerare, videokurser på YouTube, forum — du måste fördjupa dig i allt detta, och läsa användbara artiklar bildar en helhetsbild av vad det innebär för en Java-utvecklare att blomstra.
    Personligen rekommenderar vi att du börjar med artiklarna, forumet och chattsektionerna på CodeGym :)
  4. Bemästra relaterade teknologier: MySQL, HTML och CSS och mycket mer.
  5. Skapa en cool LinkedIn-profil för dig själv, lista alla dina kunskaper och utöka aktivt din krets av professionella kontakter.
    Roman delar med sig av sin erfarenhet: "Jag har nu mer än 10 000 vänner på LinkedIn. Det här är nödvändigt för att börja. Och det hjälpte [när] ett team av Android-frilansare var ute efter att lägga till en nybörjare och de kontaktade mig."

Första misslyckanden

Parallellt med studierna sökte Roman förstås en praktikplats på företag och en dag fick han en intervju. Han var inte redo att på ett övertygande sätt presentera sig själv på engelska och svara på alla tekniska chefens frågor. Enligt honom "avslutade han [testuppgiften] på något sätt, dock inte med all funktionalitet. Efter ett tag avvisades hans ansökan och han bestämde sig för att gå vidare.

Roman fick sitt första jobb tack vare LinkedIn, där han blev inbjuden att delta i ett Android-utvecklingsprojekt. Det riktiga arbetet var förstås svårare än uppgifterna på CodeGym, och det fanns mycket att lära på vägen. Teamet föll gradvis isär, så de kunde inte ta pilotprojektet till en ny nivå, och han var tvungen att leta efter ett nytt jobb.

Söker nytt jobb

Vart ska man gå? Roman letade i media på nätet efter programmerare, där han hittade kontaktuppgifter till lämpliga företag i hans stad. Han startade en massiv e-postkampanj.

För att säkerställa att allt såg bra ut skrev han sitt CV på engelska. Enligt honom var det fullt av ludd, eftersom han kände att han inte hade något speciellt att skriva. En obligatorisk post är ett följebrev (som också ska vara på engelska) så att rekryterare förstår vilken tjänst du söker och varför. Han förberedde ett svar på engelska för den där favoritintervjufrågan: "Berätta om dig själv." Det är väldigt användbart.

Intervjuerna var svåra, pinsamma och obekväma, men Roman tog sig igenom dem. Hos vissa ville de bara chatta. I andra var det nödvändigt att utföra ett par kodningsuppgifter.

Första erbjudandet

Efter fyra intervjuer tackade två företag nej till Roman, men två gav honom ett erbjudande: en för positionen som Android-utvecklare, den andra för en Java-utvecklare. Han svamlade ett tag, utan att veta vad han skulle göra, men så småningom blev han Java-utvecklare.

Några år har gått och Roman är en senior Java-utvecklare, som på sin fritid är aktivt involverad i projekt med öppen källkod (här är hans GitHub-profil ) och ofta delar med sig av sin användbara erfarenhet med studenter i avsnittet " Artiklar " på CodeGym.