{"id":52950,"date":"2019-11-20T00:00:00","date_gmt":"2019-11-19T21:00:00","guid":{"rendered":"https:\/\/prohoster.info\/blog\/blog_prohoster\/kak-podgotovitsya-k-sobesedovaniyu-v-google-i-ne-projti-ego-dvazhdy"},"modified":"2020-02-18T14:00:46","modified_gmt":"2020-02-18T11:00:46","slug":"kak-podgotovitsya-k-sobesedovaniyu-v-google-i-ne-projti-ego-dvazhdy","status":"publish","type":"post","link":"https:\/\/prohoster.info\/sv\/blog\/news\/kak-podgotovitsya-k-sobesedovaniyu-v-google-i-ne-projti-ego-dvazhdy","title":{"rendered":"Hur man f\u00f6rbereder sig f\u00f6r en intervju p\u00e5 Google och inte klarar det. Tv\u00e5 g\u00e5nger","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"Hur man f\u00f6rbereder sig f\u00f6r en intervju p\u00e5 Google och inte klarar det. Tv\u00e5 g\u00e5nger\" src=\"\/wp-content\/uploads\/2019\/11\/5bcaf7eb91486f2273b88f96aa4b6cb8.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nArtikeltiteln l\u00e5ter som ett episkt misslyckande, men s\u00e5 \u00e4r faktiskt inte fallet. Generellt sett slutade denna historia ganska positivt, \u00e4ven om det inte var p\u00e5 Google. Men det \u00e4r redan ett \u00e4mne f\u00f6r en annan artikel. I den h\u00e4r artikeln kommer jag att ber\u00e4tta om tre saker: hur min f\u00f6rberedelseprocess gick till, hur intervjuerna p\u00e5 Google gick till och varf\u00f6r jag anser att allt inte \u00e4r s\u00e5 entydigt som det kan verka.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h2>S\u00e5 hur b\u00f6rjade allt<\/h2>\n<p>\nEn kall cypriotisk vinterkv\u00e4ll fick jag pl\u00f6tsligt tanken att mina kunskaper i klassisk datavetenskap \u00e4r ganska l\u00e5ngt ifr\u00e5n genomsnittliga, och att n\u00e5got m\u00e5ste g\u00f6ras \u00e5t det. Om n\u00e5gon f\u00f6rresten inte har l\u00e4st varf\u00f6r kv\u00e4llen \u00e4r cypriotisk och kall, kan man ta reda p\u00e5 det <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/post\/359090\/\"><u>h\u00e4r<\/u><\/a><\/noindex>. Efter lite eftertanke best\u00e4mde jag mig f\u00f6r att f\u00f6rst g\u00e5 en onlinekurs i algoritmer och datatyper. Jag hade h\u00f6rt om Robert Sedgewicks kurs p\u00e5 Coursera fr\u00e5n en av mina tidigare kollegor. Kursen best\u00e5r av tv\u00e5 delar (<noindex><a rel=\"nofollow\" href=\"https:\/\/www.coursera.org\/learn\/algorithms-part1\"><u>del 1<\/u><\/a><\/noindex> och <noindex><a rel=\"nofollow\" href=\"https:\/\/www.coursera.org\/learn\/algorithms-part2\"><u>del 2<\/u><\/a><\/noindex>). Om l\u00e4nkarna skulle \u00e4ndras kan man alltid googla efter f\u00f6rfattarens namn. Varje del p\u00e5g\u00e5r i 6 veckor. I b\u00f6rjan av veckan ges f\u00f6rel\u00e4sningar, och under veckan m\u00e5ste man ocks\u00e5 g\u00f6ra \u00f6vningar. Den f\u00f6rsta delen av kursen t\u00e4cker grundl\u00e4ggande datatyper, olika sorteringstekniker och algoritmers komplexitet. Den andra delen \u00e4r mer avancerad, b\u00f6rjar med grafer och slutar med \u00e4mnen som linj\u00e4r programmering och sv\u00e5rber\u00e4knelighet. Efter att ha t\u00e4nkt igenom allt detta kom jag fram till att detta \u00e4r precis vad jag beh\u00f6ver. H\u00e4r kan nyfikna l\u00e4sare fr\u00e5ga sig, vad har Google med detta att g\u00f6ra? Och verkligen, fram till denna punkt var det inte relevant. Men jag beh\u00f6vde ett m\u00e5l, eftersom det \u00e4r ganska sv\u00e5rt att studera 12 veckor p\u00e5 kv\u00e4llarna utan ett m\u00e5l. Vad kan m\u00e5let vara med att skaffa sig nya kunskaper? Sj\u00e4lvklart deras praktiska till\u00e4mpning. I det dagliga livet \u00e4r det ganska problematiskt, men under en intervju p\u00e5 ett stort f\u00f6retag \u00e4r det helt enkelt. Snabb googling visade att Google (f\u00f6rl\u00e5t f\u00f6r tautologin) \u00e4r ett av de st\u00f6rsta f\u00f6retagen i Europa (och jag fokuserade just p\u00e5 Europa), d\u00e4r s\u00e5dana intervjuer genomf\u00f6rs. Deras kontor ligger i Z\u00fcrich, Schweiz. S\u00e5 nu var det best\u00e4mt \u2014 vi l\u00e4r oss och g\u00e5r p\u00e5 intervju hos Google.<\/p>\n<h2>F\u00f6rberedelse f\u00f6r f\u00f6rsta f\u00f6rs\u00f6ket<\/h2>\n<p>\nTolv veckor har g\u00e5tt snabbt, och jag har avslutat b\u00e5da kurserna. Mina intryck av kurserna \u00e4r mer \u00e4n positiva, och jag kan rekommendera dem till alla intresserade. Jag gillade kurserna av f\u00f6ljande sk\u00e4l:<\/p>\n<ul>\n<li> F\u00f6rel\u00e4saren talar p\u00e5 en tillr\u00e4ckligt klar engelska<\/li>\n<li> Materialet \u00e4r v\u00e4lstrukturerat<\/li>\n<li> Fantastiska presentationer som visar detaljerna i varje algoritm<\/li>\n<li> Genomt\u00e4nkt materialval<\/li>\n<li> Intressanta \u00f6vningar<\/li>\n<li> \u00d6vningarna r\u00e4ttas automatiskt p\u00e5 webbplatsen, varefter en rapport skapas<\/li>\n<\/ul>\n<p>\nMin arbetsprocess med kurserna s\u00e5g vanligtvis ut s\u00e5 h\u00e4r. Under 1-2 dagar lyssnade jag p\u00e5 f\u00f6rel\u00e4sningarna. D\u00e4refter gjorde jag ett snabbt test f\u00f6r att kontrollera kunskaperna. Resterande vecka genomf\u00f6rde jag \u00f6vningen i flera iterationer. Efter f\u00f6rsta g\u00e5ngen fick jag 30-70%, de f\u00f6ljande iterationerna tog mig upp till 97-100%. \u00d6vningen handlade vanligtvis om att implementera en algoritm, till exempel <noindex><a rel=\"nofollow\" href=\"https:\/\/en.wikipedia.org\/wiki\/Seam_carving\"><u>Seam carving<\/u><\/a><\/noindex> eller <noindex><a rel=\"nofollow\" href=\"https:\/\/en.wikipedia.org\/wiki\/Bzip2\"><u>bzip<\/u><\/a><\/noindex>.<\/p>\n<p>Efter att jag avslutat kurserna ins\u00e5g jag att m\u00e5nga kunskaper ocks\u00e5 medf\u00f6r m\u00e5nga bekymmer. Tidigare visste jag bara att jag inte visste n\u00e5got, men nu har jag b\u00f6rjat f\u00f6rst\u00e5 vad det \u00e4r jag inte vet. <\/p>\n<p>Eftersom det fortfarande bara var i maj m\u00e5nad och jag hade planerat intervjun till h\u00f6sten, beslutade jag mig f\u00f6r att forts\u00e4tta min utbildning. Efter att ha l\u00e4st igenom kravspecifikationen f\u00f6r tj\u00e4nsten beslutade jag mig f\u00f6r att parallellt fokusera p\u00e5 tv\u00e5 riktningar: forts\u00e4tta studera algoritmer och genomf\u00f6ra en grundkurs i maskininl\u00e4rning. F\u00f6r det f\u00f6rsta syftet best\u00e4mde jag mig f\u00f6r att byta fr\u00e5n kurser till en bok och valde Stephen Skienas monumentala verk 'Algoritmer. En v\u00e4gledning f\u00f6r utveckling' (The Algorithm Design Manual). Inte s\u00e5 monumentalt som Knuths verk, men \u00e4nd\u00e5. F\u00f6r det andra syftet gick jag \u00e5terigen till Coursera och anm\u00e4lde mig till Andrew Ng:s kurs <noindex><a rel=\"nofollow\" href=\"https:\/\/www.coursera.org\/learn\/machine-learning\">Machine Learning<\/a><\/noindex>.<\/p>\n<p>Tre m\u00e5nader till har g\u00e5tt, och jag har avslutat b\u00e5de kursen och boken. <\/p>\n<p>Vi b\u00f6rjar med boken. L\u00e4sningen visade sig vara r\u00e4tt intressant, \u00e4ven om den inte var helt enkel. I princip skulle jag rekommendera boken, men inte direkt. Sammanfattningsvis ger boken en djupare analys av vad jag l\u00e4rde mig p\u00e5 kurserna. Dessutom uppt\u00e4ckte jag (ur ett formellt perspektiv) s\u00e5dana begrepp som heuristik och dynamisk programmering. Tidigare har jag anv\u00e4nt dem, men jag visste inte vad de kallades. Boken inneh\u00e5ller \u00e4ven en del anekdoter fr\u00e5n f\u00f6rfattarens liv (War Story), vilket lite bryter av den akademiska framst\u00e4llningen. Den andra halvan av boken kan f\u00f6r \u00f6vrigt skippas, d\u00e4r handlar det mest om att beskriva existerande problem och deras l\u00f6sningsmetoder. Nyttigt om man till\u00e4mpar det regelbundet i praktiken, annars gl\u00f6ms det bort genast.<\/p>\n<p>Kursen gjorde mig mer \u00e4n n\u00f6jd. F\u00f6rfattaren kan sitt \u00e4mne och f\u00f6rklarar p\u00e5 ett intressant s\u00e4tt. Dessutom mindes jag en hel del, n\u00e4mligen linj\u00e4r algebra och grunderna i neurala n\u00e4tverk, fr\u00e5n universitetet, s\u00e5 jag st\u00f6tte inte p\u00e5 n\u00e5gra st\u00f6rre sv\u00e5righeter. Kursens struktur \u00e4r ganska standard. Kursen \u00e4r uppdelad i veckor. Varje vecka inleds med f\u00f6rel\u00e4sningar blandat med korta tester. Efter f\u00f6rel\u00e4sningarna ges en uppgift som ska g\u00f6ras, skickas in och som bed\u00f6ms automatiskt. Kort sagt, listan \u00f6ver vad som l\u00e4rs ut under kursen \u00e4r f\u00f6ljande:<br \/>\n \u2014 kostnadsfunktion<br \/>\n \u2014 linj\u00e4r regression<br \/>\n \u2014 gradientnedstigning<br \/>\n \u2014 funktionsskalning<br \/>\n \u2014 normalekvation<br \/>\n \u2014 logistisk regression<br \/>\n \u2014 flerklassklassificering (one vs all)<br \/>\n \u2014 neurala n\u00e4tverk<br \/>\n \u2014 bak\u00e5tpropagering<br \/>\n \u2014 regularisering<br \/>\n \u2014 bias\/variation<br \/>\n \u2014 inl\u00e4rningskurvor<br \/>\n \u2014 felm\u00e5tt (precision, \u00e5terkallelse, F1)<br \/>\n \u2014 Support Vector Machines (stor marginalklassificering)<br \/>\n \u2014 K-means<br \/>\n \u2014 huvudkomponentanalys<br \/>\n \u2014 anomalies\u00f6kning<br \/>\n \u2014 samarbetande filtrering (rekommendationssystem)<br \/>\n \u2014 stokastisk, mini-batch, batch gradientnedstigning<br \/>\n \u2014 onlineinl\u00e4rning<br \/>\n \u2014 map reduce<br \/>\n \u2014 takanalys<br \/>\nEfter att ha genomg\u00e5tt kursen hade jag en f\u00f6rst\u00e5else f\u00f6r alla dessa \u00e4mnen. Efter 2 \u00e5r hade jag n\u00e4stan gl\u00f6mt bort allt naturligt. Jag rekommenderar det till dem som inte \u00e4r bekanta med maskininl\u00e4rning och vill f\u00e5 en bra f\u00f6rst\u00e5else f\u00f6r grundl\u00e4ggande koncept f\u00f6r att kunna g\u00e5 vidare.<\/p>\n<h2>F\u00f6rsta f\u00f6rs\u00f6ket<\/h2>\n<p>\nDet var redan september och det var dags att t\u00e4nka p\u00e5 intervjun. Eftersom det var ganska meningsl\u00f6st att ans\u00f6ka via hemsidan, b\u00f6rjade jag s\u00f6ka efter bekanta som arbetar p\u00e5 Google. Valet f\u00f6ll p\u00e5 <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/users\/datacompboy\/\" class=\"user_link\">datacompboy<\/a><\/noindex>, eftersom han var den enda jag k\u00e4nde direkt (\u00e4ven om inte personligen). Han gick med p\u00e5 att vidarebefordra mitt CV, och snart fick jag ett mejl fr\u00e5n rekryteraren som erbj\u00f6d mig att boka en tid i hans kalender f\u00f6r det f\u00f6rsta samtalet. N\u00e5gra dagar senare hade vi v\u00e5rt samtal. Vi f\u00f6rs\u00f6kte kommunicera via Hangouts, men kvaliteten var fruktansv\u00e4rd, s\u00e5 vi bytte till telefon. F\u00f6rst diskuterade vi snabbt standardfr\u00e5gor om varf\u00f6r och hur, och sedan gick vi vidare till den tekniska granskningen. Den bestod av ett tiotal fr\u00e5gor, s\u00e5som <\/p>\n<p>Intervjun var ocks\u00e5 via Hangouts. F\u00f6rst pratade vi i fem minuter om mig, och sedan gick vi \u00f6ver till uppgiften. Uppgiften handlade om grafer. Jag f\u00f6rstod snabbt vad jag skulle g\u00f6ra, men valde inte r\u00e4tt algoritm. N\u00e4r jag b\u00f6rjade skriva koden ins\u00e5g jag detta och bytte till ett annat alternativ som jag sedan kompletterade. Intervjuaren st\u00e4llde n\u00e5gra fr\u00e5gor om algoritmens komplexitet och fr\u00e5gade om det fanns n\u00e5got s\u00e4tt att g\u00f6ra det snabbare. Jag k\u00e4nde mig lite dum och kunde inte svara. Vid det laget var tiden slut och vi skiljdes \u00e5t. Efter ungef\u00e4r tio minuter kom jag p\u00e5 att i st\u00e4llet f\u00f6r Dijkstras algoritm, som jag anv\u00e4nt, kunde jag ha anv\u00e4nt bredden f\u00f6rst, vilket hade varit snabbare f\u00f6r just den h\u00e4r uppgiften. N\u00e5gra dagar senare ringde rekryteraren och sa att intervjun i stort sett hade g\u00e5tt bra och att vi beh\u00f6vde ordna en till. Vi kom \u00f6verens om att ses igen om en vecka.<\/p>\n<p>Denna g\u00e5ng gick det s\u00e4mre. Om intervjuaren f\u00f6rsta g\u00e5ngen var v\u00e4nlig och pratsam, s\u00e5 var denne den h\u00e4r g\u00e5ngen ganska dyster. Jag kunde inte direkt l\u00f6sa uppgiften, \u00e4ven om de id\u00e9er jag kom med i princip skulle kunna leda till en l\u00f6sning. Efter flera ledtr\u00e5dar fr\u00e5n intervjuaren kom jag p\u00e5 l\u00f6sningen. Den h\u00e4r g\u00e5ngen handlade det \u00e5terigen om en bred s\u00f6kning, men fr\u00e5n flera punkter. Jag skrev ner l\u00f6sningarna och h\u00f6ll mig inom tidsramen, men gl\u00f6mde av gr\u00e4nsfallen. Efter en stund ringde rekryteraren och meddelade att intervjuaren den h\u00e4r g\u00e5ngen var missn\u00f6jd, eftersom han ans\u00e5g att jag beh\u00f6vde f\u00f6r m\u00e5nga ledtr\u00e5dar (3 eller 4 stycken) och att jag st\u00e4ndigt \u00e4ndrade koden under skrivandet. Efter de tv\u00e5 intervjuerna beslutades det att jag inte skulle g\u00e5 vidare, utan ist\u00e4llet skjuta upp n\u00e4sta intervju i ett \u00e5r, om jag skulle ha lust. S\u00e5 vi sa adj\u00f6. <\/p>\n<p>Och av denna historia drog jag n\u00e5gra slutsatser:<\/p>\n<ul>\n<li> Teori \u00e4r bra, men man m\u00e5ste snabbt kunna orientera sig i den.<\/li>\n<li> Teori utan praktik hj\u00e4lper inte. Man m\u00e5ste l\u00f6sa uppgifter och n\u00e5 ett automatiskt kodskrivande.<\/li>\n<li> Mycket beror p\u00e5 intervjuaren. Och det finns inget att g\u00f6ra \u00e5t det.<\/li>\n<\/ul>\n<p><\/p>\n<h2>F\u00f6rberedelser inf\u00f6r den andra f\u00f6rs\u00f6ket.<\/h2>\n<p>\nEfter att ha funderat p\u00e5 situationen beslutade jag mig f\u00f6r att prova igen om ett \u00e5r. Och jag gjorde en liten justering av m\u00e5let. Tidigare var det fr\u00e4msta m\u00e5let att studera, och intervjun p\u00e5 Google var en avl\u00e4gsen morot, men nu var m\u00e5let att klara intervjun, medan studierna blev medlet.<br \/>\nS\u00e5, en ny plan utvecklades, som inneh\u00f6ll f\u00f6ljande punkter:<\/p>\n<ul>\n<li> Forts\u00e4tta studera teori genom att l\u00e4sa b\u00f6cker och artiklar.<\/li>\n<li> L\u00f6sa algoritmiska uppgifter i m\u00e4ngden 500-1000 stycken.<\/li>\n<li> Forts\u00e4tta studera teori genom att titta p\u00e5 videor.<\/li>\n<li> Forts\u00e4tta studera teori genom kurser.<\/li>\n<li> Studera andras erfarenheter av intervjuer hos Google.<\/li>\n<\/ul>\n<p>\nPlanen genomf\u00f6rdes av mig under ett \u00e5r. Jag kommer nu att beskriva vad exakt jag gjorde f\u00f6r varje punkt.<\/p>\n<h4>B\u00f6cker och artiklar<\/h4>\n<p>\nAntalet artiklar jag har l\u00e4st minns jag faktiskt inte ens, jag l\u00e4ste dem b\u00e5de p\u00e5 ryska och engelska. Den mest anv\u00e4ndbara webbplatsen var kanske <noindex><a rel=\"nofollow\" href=\"http:\/\/e-maxx.ru\/algo\/\"><u>den h\u00e4r<\/u><\/a><\/noindex>. H\u00e4r finns en samling av m\u00e5nga intressanta algoritmer med kodexempel.<\/p>\n<p>Jag har l\u00e4st 5 b\u00f6cker: Algorithms, 4th edition (Sedgewick, Wayne), Introduction to Algorithms 3rd Edition (Cormen, Leiserson, Rivest, Stein), Cracking the Coding Interview 4th edition (Gayle Laakmann), Programming Interviews Exposed 2nd edition (Mongan, Suojanen, Giguere), Elements of Programming Interviews (Aziz, Lee, Prakash). Dessa kan delas in i 2 kategorier. Den f\u00f6rsta kategorin inkluderar b\u00f6ckerna av Sedgewick och Cormen. Detta \u00e4r teori. De andra \u00e4r f\u00f6rberedelser f\u00f6r intervjuer. Sedgewick ber\u00e4ttar i boken ungef\u00e4r detsamma som han g\u00f6r i sina kurser. Bara i skriftlig form. Det \u00e4r inte s\u00e4rskilt meningsfullt att l\u00e4sa noggrant om du har g\u00e5tt kursen, men det \u00e4r v\u00e4rt att snabbt g\u00e5 igenom. Om du inte har tagit kursen \u00e4r det v\u00e4rt att l\u00e4sa. Cormen verkade i \u00f6verkant tr\u00e5kig f\u00f6r mig. Jag tog mig \u00e4rligt talat igenom den med sv\u00e5righet. Jag fick bara ut <noindex><a rel=\"nofollow\" href=\"https:\/\/en.wikipedia.org\/wiki\/Master_theorem_(analysis_of_algorithms)\"><u>master theorem<\/u><\/a><\/noindex>, ja n\u00e5gra s\u00e4llan anv\u00e4nda datastrukturer (Fibonacci heap, van Emde Boas tree, radix heap).<\/p>\n<p>Boken f\u00f6r att f\u00f6rbereda sig inf\u00f6r intervjuer b\u00f6r l\u00e4sas, om inte annat s\u00e5 en. De \u00e4r alla uppbyggda p\u00e5 ungef\u00e4r samma princip. De beskriver intervjuprocessen i stora teknikf\u00f6retag, ger grundl\u00e4ggande kunskaper inom datavetenskap, uppgifter relaterade till dessa grundl\u00e4ggande kunskaper, l\u00f6sningar p\u00e5 uppgifterna och en genomg\u00e5ng av l\u00f6sningarna. Av de tre n\u00e4mnda skulle jag nog rekommendera Cracking the Coding Interview som huvudsaklig, medan de andra kan l\u00e4sas om man vill.<\/p>\n<h4>Algoritmiska uppgifter<\/h4>\n<p>\nDetta var f\u00f6rmodligen den mest intressanta delen av f\u00f6rberedelsen. Man kan naturligtvis s\u00e4tta sig ner och bara l\u00f6sa problem. Det finns m\u00e5nga olika hemsidor f\u00f6r detta. Jag anv\u00e4nde fr\u00e4mst tre: <noindex><a rel=\"nofollow\" href=\"https:\/\/www.hackerrank.com\"><u>Hackerrank<\/u><\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"https:\/\/www.codechef.com\/\"><u>CodeChef<\/u><\/a><\/noindex> och <noindex><a rel=\"nofollow\" href=\"https:\/\/leetcode.com\/\"><u>LeetCode<\/u><\/a><\/noindex>. P\u00e5 CodeChef \u00e4r uppgifterna indelade efter sv\u00e5righetsgrad, men inte efter \u00e4mnen. P\u00e5 Hackerrank b\u00e5de efter sv\u00e5righetsgrad och \u00e4mnen. <\/p>\n<p>Men som jag snabbt ins\u00e5g finns det ett mer intressant s\u00e4tt. Och det \u00e4r t\u00e4vlingar (programming challenges eller programming contests). Alla tre sidor erbjuder s\u00e5dana. Men med LeetCode finns det ett problem \u2014 obekv\u00e4m tidzon. D\u00e4rf\u00f6r deltog jag inte p\u00e5 den sidan. Hackerrank och CodeChef erbjuder ett tillr\u00e4ckligt stort antal olika t\u00e4vlingar, som kan p\u00e5g\u00e5 fr\u00e5n 1 timme till 10 dagar. Olika format har olika regler, men det h\u00e4r kan man prata om l\u00e4nge. Huvudpo\u00e4ngen \u00e4r att dessa t\u00e4vlingar tillf\u00f6r ett t\u00e4vlingsmoment (och \u00e5terigen en tautologi) i inl\u00e4rningsprocessen.<\/p>\n<p>Totalt har jag deltagit i 37 t\u00e4vlingar p\u00e5 Hackerrank. Av dessa var 32 rankade och 5 var sponsrade (jag fick till och med 25$ i en av dem) eller f\u00f6r skojs skull. I de rankade t\u00e4vlingarna kom jag 10 g\u00e5nger in i topp 4%, 11 g\u00e5nger i topp 12% och 5 g\u00e5nger i topp 25%. Mina b\u00e4sta resultat var 27\/1459 i en 3-timmars t\u00e4vling och 22\/9721 i en veckol\u00e5ng.<\/p>\n<p>Jag flyttade till CodeChef n\u00e4r t\u00e4vlingarna p\u00e5 Hackerrank blev mer s\u00e4llsynta. Totalt deltog jag i 5 t\u00e4vlingar. Det b\u00e4sta resultatet var 426\/5019 i en tio dagar l\u00e5ng t\u00e4vling.<\/p>\n<p>Totalt har jag l\u00f6st lite mer \u00e4n 1000 uppgifter i t\u00e4vlingar och bara f\u00f6r skojs skull, vilket passade in i min plan. Tyv\u00e4rr har jag nu ingen ledig tid f\u00f6r fortsatt t\u00e4vlingsverksamhet, och inte heller n\u00e5got m\u00e5l som jag kan avs\u00e4tta min lediga tid f\u00f6r. Men det var roligt. Jag rekommenderar till dem som \u00e4r intresserade att hitta likasinnade. Tillsammans \u00e4r det mycket mer intressant. Jag hade kul med en v\u00e4n, s\u00e5 kanske d\u00e4rf\u00f6r gick det s\u00e5 bra.<\/p>\n<h4>Titta p\u00e5 video<\/h4>\n<p>\nEfter att ha l\u00e4st Skienas bok blev jag \u00f6verlag intresserad av det han sysslar med. Precis som Sedgwick \u00e4r han professor vid ett universitet. D\u00e4rf\u00f6r finns det videoinspelningar av hans kurser tillg\u00e4ngliga online. Jag beslutade mig f\u00f6r att titta p\u00e5 kursen <noindex><a rel=\"nofollow\" href=\"https:\/\/www.youtube.com\/playlist?list=PL07B3F10B48592010\"><u>COMP300E \u2014 Programming Challenges \u2014 2009 HKUST<\/u><\/a><\/noindex>. Jag kan inte s\u00e4ga att jag gillade det s\u00e4rskilt mycket. F\u00f6r det f\u00f6rsta var videokvaliteten inte s\u00e5 bra. F\u00f6r det andra f\u00f6rs\u00f6kte jag inte sj\u00e4lv l\u00f6sa uppgifterna som diskuterades inom ramen f\u00f6r kursen. S\u00e5 engagemanget var inte s\u00e5 h\u00f6gt.<br \/>\nUnder tiden jag l\u00f6ste uppgifter och f\u00f6rs\u00f6kte hitta r\u00e4tt algoritm st\u00f6tte jag p\u00e5 Tushar Roys videor. Han arbetade p\u00e5 Amazon och arbetar nu p\u00e5 Apple. Som jag senare ins\u00e5g har han en <noindex><a rel=\"nofollow\" href=\"https:\/\/www.youtube.com\/user\/tusharroy2525\/videos\">YouTube-kanal<\/a><\/noindex>, d\u00e4r han laddar upp genomg\u00e5ngar av olika algoritmer. Vid tidpunkten f\u00f6r artikelskrivandet inneh\u00f6ll kanalen 103 videor. Och jag m\u00e5ste s\u00e4ga att hans genomg\u00e5ngar \u00e4r mycket v\u00e4lgjorda. Jag har f\u00f6rs\u00f6kt titta p\u00e5 andra f\u00f6rfattare, men det funkade inte s\u00e5 bra. S\u00e5 jag kan definitivt rekommendera denna kanal.<\/p>\n<h4>Genomg\u00e5ng av kurser<\/h4>\n<p>\nH\u00e4r har jag inte gjort s\u00e4rskilt mycket. Jag har tittat p\u00e5 videor fr\u00e5n Android Developer Nanodegree fr\u00e5n Google och genomf\u00f6rt en kurs fr\u00e5n ITMO <noindex><a rel=\"nofollow\" href=\"https:\/\/www.edx.org\/course\/how-to-win-coding-competitions-secrets-of-champions\">How to Win Coding Competitions: Secrets of Champions<\/a><\/noindex>. Nanodegrees \u00e4r helt okej, \u00e4ven om jag naturligtvis inte fick n\u00e5gon ny information d\u00e4rifr\u00e5n. Kursen fr\u00e5n ITMO var lite hastig i teorin, men uppgifterna var intressanta. Jag skulle inte rekommendera att b\u00f6rja med den, men i princip var tiden som spenderades inte bortkastad.<\/p>\n<h4>Utforska andra m\u00e4nniskors erfarenheter<\/h4>\n<p>\nSj\u00e4lvklart har m\u00e5nga f\u00f6rs\u00f6kt komma in p\u00e5 Google. N\u00e5gra lyckades, andra inte. Vissa har skrivit artiklar om detta. Av intressanta saker kanske jag n\u00e4mner <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/jwasham\/coding-interview-university\">detta<\/a><\/noindex> och <noindex><a rel=\"nofollow\" href=\"http:\/\/larrr.com\/wp-content\/uploads\/2016\/10\/InterviewPreparationGuide.pdf\">detta<\/a><\/noindex>. I f\u00f6rsta fallet hade personen f\u00f6rberett sig med en lista \u00f6ver vad han beh\u00f6vde l\u00e4ra sig f\u00f6r att bli Software Engineer och komma till Google. Han hamnade till slut p\u00e5 Amazon, men det \u00e4r inte s\u00e5 viktigt. Den andra guiden \u00e4r skriven av Google-ingenj\u00f6ren Larisa Agarova (<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/users\/larrr\/\" class=\"user_link\">Larrr<\/a><\/noindex>). F\u00f6rutom detta dokument kan man ocks\u00e5 l\u00e4sa <noindex><a rel=\"nofollow\" href=\"http:\/\/larrr.com\/\">hennes blogg<\/a><\/noindex>.<\/p>\n<p>Det \u00e4r v\u00e4rt att l\u00e4sa recensioner om intervjuer p\u00e5 Glassdoor. De \u00e4r mer eller mindre liknande, men man kan f\u00e5 ut n\u00e5gon nyttig information.<\/p>\n<p>Jag kommer inte att ge l\u00e4nkar till andra sm\u00e5 artiklar, ni kan sj\u00e4lva hitta dem i Google. <\/p>\n<h2>Andra f\u00f6rs\u00f6ket<\/h2>\n<p>\nOch ett \u00e5r har g\u00e5tt. Det har varit ett ganska intensivt \u00e5r av l\u00e4rande. Men inf\u00f6r den nya h\u00f6sten hade jag mycket djupare teoretiska kunskaper och praktiska f\u00e4rdigheter. Det var fortfarande n\u00e5gra veckor kvar till slutet av \u00e5ret jag hade tilldelats f\u00f6r att f\u00f6rbereda mig, n\u00e4r jag pl\u00f6tsligt fick ett mejl fr\u00e5n en rekryterare p\u00e5 Google, som fr\u00e5gade om jag fortfarande var intresserad av att arbeta p\u00e5 Google och om jag ville prata med honom. Sj\u00e4lvklart var jag intresserad. Vi kom \u00f6verens om att ringas om en vecka. Jag bads ocks\u00e5 om ett uppdaterat CV, till vilket jag lade till en kort beskrivning av vad jag hade gjort under \u00e5ret p\u00e5 jobbet och i st\u00f6rsta allm\u00e4nhet.<\/p>\n<p>Efter v\u00e5rt samtal om livet kom vi \u00f6verens om att vi skulle ha en Hangouts-intervju om en vecka, precis som f\u00f6rra \u00e5ret. Veckan gick, det var dags f\u00f6r intervjun, men intervjuaren d\u00f6k inte upp. Tio minuter hade passerat, jag b\u00f6rjade bli nerv\u00f6s, n\u00e4r pl\u00f6tsligt n\u00e5gon kom in i chatten. Som det senare visade sig, kunde min intervjuare av n\u00e5gon anledning inte dyka upp och hastigt fick de tag p\u00e5 en ers\u00e4ttare. Den personen var inte riktigt f\u00f6rberedd vare sig tekniskt eller f\u00f6r intervjun. Men sedan gick allt bra. Jag l\u00f6ste uppgiften snabbt, beskrev var fallen kunde finnas och hur man kan undvika dem. Vi diskuterade flera olika alternativ till uppgiften och sv\u00e5righetsgraden av algoritmen. Sedan pratade vi i fem minuter till, ingenj\u00f6ren delade sina intryck av att arbeta i M\u00fcnchen (det verkar som om de inte hittade n\u00e5gon br\u00e5dskande ers\u00e4ttning i Z\u00fcrich), och s\u00e5 skildes vi.<\/p>\n<p>Samma dag kontaktade en rekryterare mig och meddelade att intervjun hade g\u00e5tt utm\u00e4rkt och att de var redo att bjuda in mig till en intervju p\u00e5 kontoret. Dagen efter pratade vi via Hangouts och diskuterade detaljerna. Eftersom jag beh\u00f6vde ans\u00f6ka om visum best\u00e4mde vi att schemal\u00e4gga intervjun en m\u00e5nad senare. <\/p>\n<p>Medan jag f\u00f6rberedde dokumenten diskuterade jag samtidigt den kommande intervjun med rekryteraren. En standardintervju p\u00e5 Google best\u00e5r av 4 algoritmiska och en System Design intervju. Men eftersom jag ans\u00f6kte som Android-utvecklare fick jag veta att en del av intervjun skulle handla om Android-specifika \u00e4mnen. Vilka exakt och vad som skulle vara specifikt kunde jag inte riktigt f\u00e5 ur rekryteraren. S\u00e5vitt jag f\u00f6rstod har de inf\u00f6rt det relativt nyligen och han var sj\u00e4lv inte s\u00e5 insatt. Jag blev ocks\u00e5 inbokad f\u00f6r tv\u00e5 tr\u00e4ningssessioner: hur man g\u00e5r igenom en algoritmisk intervju och hur man genomf\u00f6r en System Design intervju. Sessionerna var av medelh\u00f6g nytta. Ingen kunde heller ber\u00e4tta f\u00f6r mig vad man fr\u00e5gar Android-utvecklare. S\u00e5 min f\u00f6rberedelse den h\u00e4r m\u00e5naden blev f\u00f6ljande:<\/p>\n<ul>\n<li>Att k\u00f6pa en whiteboard och skriva 2-3 dussin av de mest popul\u00e4ra algoritmerna p\u00e5 den fr\u00e5n minnet. 3-5 stycken varje dag. Totalt skrev jag varje g\u00e5ng flera g\u00e5nger.<\/li>\n<li>Att fr\u00e4scha upp olika kunskaper om Android som jag inte anv\u00e4nder varje dag.<\/li>\n<li>Att titta p\u00e5 n\u00e5gra videor om Big Scale och allt s\u00e5dant.<\/li>\n<\/ul>\n<p>\nSom jag redan n\u00e4mnt, gjorde jag samtidigt dokument f\u00f6r resan. F\u00f6rst bad de om uppgifter f\u00f6r att skapa en inbjudan. Sedan f\u00f6rs\u00f6kte jag l\u00e4nge ta reda p\u00e5 vem som i Cypern utf\u00e4rdar visum till Schweiz, eftersom den schweiziska ambassaden inte hanterar detta. Det visade sig att det \u00e4r \u00f6sterrikiska konsulatet som g\u00f6r det. Jag ringde och bokade en tid. D\u00e4r beg\u00e4rde de en rad dokument, men inget s\u00e4rskilt intressant. Foto, pass, uppeh\u00e5llstillst\u00e5nd, en massa olika intyg och sj\u00e4lvklart inbjudan. Under tiden kom brevet aldrig. Till slut \u00e5kte jag med en vanlig utskrift och det gick bra. Sj\u00e4lva brevet kom f\u00f6rst efter tre dagar, dessutom lyckades cypriotiska FedEx inte hitta min adress, s\u00e5 jag var tvungen att h\u00e4mta det sj\u00e4lv. Samtidigt fick jag en paket fr\u00e5n samma FedEx som de ocks\u00e5 inte kunde leverera till mig, eftersom de inte kunde hitta adressen, och som hade legat d\u00e4r sedan juni (5 m\u00e5nader, Karl). Eftersom jag inte visste om det f\u00f6rv\u00e4ntade jag mig inte heller att de hade det. Jag fick visumet i tid, efter vilket mitt hotell bokades och jag fick olika alternativ f\u00f6r flyg. Jag justerade alternativen f\u00f6r att g\u00f6ra det mer bekv\u00e4mt. Det fanns inga direkta flyg, s\u00e5 jag fl\u00f6g dit via Aten och tillbaka via Wien.<\/p>\n<p>Efter att alla formaliteter med resan var klara gick det ytterligare n\u00e5gra dagar och jag fl\u00f6g allts\u00e5 till Z\u00fcrich. Jag kom dit utan n\u00e5gra \u00e4ventyr. Fr\u00e5n flygplatsen till staden \u00e5kte jag t\u00e5g - snabbt och bekv\u00e4mt. Efter att ha svamlat runt lite i staden hittade jag hotellet och checkade in. Eftersom hotellet var bokat utan mat \u00e5t jag middag i n\u00e4rheten och d\u00e4ckade, eftersom flygningen var tidig p\u00e5 morgonen och jag var tr\u00f6tt. N\u00e4sta dag \u00e5t jag frukost p\u00e5 hotellet (f\u00f6r en extra kostnad) och \u00e5kte till Google-kontoret. Google har flera kontor i Z\u00fcrich. Mitt intervall var inte p\u00e5 det centrala kontoret. Och kontoret s\u00e5g ganska vanligt ut, s\u00e5 jag fick inte se alla de f\u00f6rdelar som ett 'normalt' Google-kontor har. Jag registrerade mig hos administrat\u00f6ren och satte mig f\u00f6r att v\u00e4nta. Efter en stund kom rekryteraren ut och ber\u00e4ttade planen f\u00f6r dagen, och sedan tog han mig till rummet d\u00e4r intervjuerna skulle \u00e4ga rum. Planen inkluderade 3 intervjuer, lunch och ytterligare 2 intervjuer.<\/p>\n<h4>Intervju nummer ett<\/h4>\n<p>\nDen f\u00f6rsta intervjun handlade just om Android. Den var verkligen inte relaterad till algoritmer. En \u00f6verraskning, dock. N\u00e5v\u00e4l, det var n\u00e4stan mer bekant s\u00e5. De bad mig att skapa en viss UI-komponent. F\u00f6rst diskuterade vi vad och hur. Jag f\u00f6reslog att g\u00f6ra l\u00f6sningen med RxJava och beskrev vad jag skulle g\u00f6ra och varf\u00f6r. De sa att det sj\u00e4lvklart var bra, men l\u00e5t oss g\u00f6ra det med Android-ramverket ist\u00e4llet. Dessutom skulle vi skriva koden p\u00e5 tavlan. Det handlade inte bara om komponenten, utan hela aktiviteten som anv\u00e4nde den komponenten. Det var n\u00e5got jag inte var beredd p\u00e5. Att skriva algoritm p\u00e5 30-50 rader p\u00e5 tavlan \u00e4r en sak, men n\u00e5got helt annat \u00e4r att skriva Android-kod, \u00e4ven om den \u00e4r f\u00f6rkortad med kommentarer som \"ja, det h\u00e4r skriver jag inte eftersom det \u00e4r uppenbart\". Det blev n\u00e5gon slags blandning p\u00e5 tre tavlor. Jag l\u00f6ste uppgiften, men det s\u00e5g f\u00f6rskr\u00e4ckligt ut.<\/p>\n<h4>Intervju nummer tv\u00e5<\/h4>\n<p>\nDen h\u00e4r g\u00e5ngen handlade intervjun om algoritmer. Det var tv\u00e5 intervjuare. En var sj\u00e4lva intervjuaren, och den andra en ung padawan (skugga intervjuare). Jag beh\u00f6vde komma p\u00e5 en datakonstruktion med s\u00e4rskilda egenskaper. F\u00f6rst diskuterade vi problemet, som vanligt. Jag st\u00e4llde olika fr\u00e5gor, intervjuaren svarade. Efter en stund bad de mig att skriva n\u00e5gra metoder f\u00f6r den p\u00e5hittade strukturen p\u00e5 tavlan. Den h\u00e4r g\u00e5ngen gick det ganska bra, dock med n\u00e5gra sm\u00e5 fel som jag r\u00e4ttade till efter intervjuarens ledtr\u00e5d. <\/p>\n<h4>Intervju nummer tre<\/h4>\n<p>\nDen h\u00e4r g\u00e5ngen handlade det om System Design, som pl\u00f6tsligt ocks\u00e5 visade sig vara Android. Jag beh\u00f6vde utveckla en app med specifik funktionalitet. Vi diskuterade krav p\u00e5 appen, servern och kommunikationsprotokollet. Jag b\u00f6rjade beskriva vilka komponenter eller bibliotek jag skulle anv\u00e4nda vid uppbyggnaden av appen. Sedan, n\u00e4r jag n\u00e4mnde Job Scheduler, kom jag av mig. Po\u00e4ngen var att jag aldrig hade anv\u00e4nt det praktiskt eftersom jag vid tidpunkten f\u00f6r dess utgivning just hade bytt till att st\u00f6dja appar d\u00e4r det inte ens fanns n\u00e5gra uppgifter f\u00f6r dess till\u00e4mpning. Vid utvecklingen av efterf\u00f6ljande appar var det samma sak. S\u00e5 i teorin vet jag vad det \u00e4r, n\u00e4r och hur det anv\u00e4nds, men jag har ingen erfarenhet av till\u00e4mpningen. Och intervjuaren verkade inte tycka om det. Sen bad de mig att skriva kod. Ja, vid utvecklingen av appen m\u00e5ste man skriva kod direkt. \u00c5terigen Android-kod p\u00e5 tavlan. Det blev \u00e5terigen ganska skr\u00e4mmande.<\/p>\n<h4>Lunch<\/h4>\n<p>\nEn annan person skulle ha kommit, men han d\u00f6k inte upp. \u00c4ven Google kan ha missar. I slut\u00e4ndan gick jag p\u00e5 lunch med den f\u00f6reg\u00e5ende intervjuaren, hennes kollega, och lite senare ansl\u00f6t n\u00e4sta intervjuare. Lunchen var helt okej. \u00c5terigen, eftersom detta inte \u00e4r huvudkontoret i Z\u00fcrich, s\u00e5g matsalen ganska vanlig ut, \u00e4ven om den var mycket trevlig.<\/p>\n<h4>Intervju nummer fyra<\/h4>\n<p>\n\u00c4ntligen algoritmer i sin renaste form. Jag l\u00f6ste den f\u00f6rsta uppgiften ganska snabbt och effektivt, men missade en gr\u00e4nsfall, men med hj\u00e4lp av intervjuaren (han gav just detta gr\u00e4nsfall) hittade jag problemet och r\u00e4ttade det. Sj\u00e4lvklart beh\u00f6vde jag skriva koden p\u00e5 en tavla. Sedan gavs en liknande men sv\u00e5rare uppgift. F\u00f6r den hittade jag ett par suboptimala l\u00f6sningar och n\u00e4stan en optimal, men jag saknade 5-10 minuter f\u00f6r att avsluta tanken. Och jag hann inte skriva koden f\u00f6r den.<\/p>\n<h4>Intervju nummer fem<\/h4>\n<p>\nOch \u00e4nnu en Android-intervju. Jag undrar varf\u00f6r jag l\u00e4rde mig algoritmer hela \u00e5ret?<br \/>\nF\u00f6rst var det n\u00e5gra enkla fr\u00e5gor. Sedan skrev intervjuaren kod p\u00e5 tavlan och bad mig hitta problem i den. Jag hittade, f\u00f6rklarade och r\u00e4ttade. Vi diskuterade det. Men sedan b\u00f6rjade ett par ov\u00e4ntade fr\u00e5gor i stil med \"vad g\u00f6r metod Y i klass X\", \"vad finns inuti metod Y\", \"vad g\u00f6r klass Z\". Jag svarade f\u00f6rst\u00e5s p\u00e5 n\u00e5got, men sa sedan att jag nyligen inte har arbetat med det och naturligtvis inte minns i detalj vem, vad och hur. Efter detta fr\u00e5gade intervjuaren vad jag g\u00f6r nu. Och fr\u00e5gorna handlade om det. H\u00e4r svarade jag mycket b\u00e4ttre.<\/p>\n<p>Efter den sista intervjuens slut tog de min passerkort, \u00f6nskade mig lycka till och skickade iv\u00e4g mig. Jag promenerade lite i staden, \u00e5t middag och gick till hotellet, d\u00e4r jag somnade, eftersom flyget \u00e5terigen var tidigt p\u00e5 morgonen. Dagen efter kom jag fram till Cypern utan problem. Jag skrev feedback p\u00e5 intervjun p\u00e5 beg\u00e4ran av rekryteraren och fyllde i ett formul\u00e4r i en s\u00e4rskild tj\u00e4nst f\u00f6r att f\u00e5 tillbaka mina utgifter. Av alla kostnader betalar Google bara f\u00f6r biljetterna direkt. Hotellet, maten och transporten betalas av kandidaten. Sedan fyller vi i formul\u00e4ret, bifogar kvitton och skickar till ett s\u00e4rskilt kontor. De behandlar det och \u00f6verf\u00f6r pengarna till kontot ganska snabbt.<\/p>\n<p>Det tog en och en halv vecka att bearbeta intervjuresultaten. Efter det fick jag veta att jag var \"a bit below the bar\". Det vill s\u00e4ga, jag n\u00e5dde inte riktigt upp. F\u00f6r att vara mer specifik, gick 2 intervjuer bra, 2 gick inte s\u00e5 bra, och System Design gick v\u00e4ldigt d\u00e5ligt. Om \u00e5tminstone 3 hade g\u00e5tt bra skulle jag ha haft en chans, men nu utan n\u00e5gra m\u00f6jligheter. Jag blev erbjuden att prova igen om ett \u00e5r.<\/p>\n<p>Till en b\u00f6rjan blev jag f\u00f6rst\u00e5s besviken, eftersom jag lagt ner mycket arbete p\u00e5 f\u00f6rberedelserna, och vid tidpunkten f\u00f6r intervjun hade jag redan b\u00f6rjat t\u00e4nka p\u00e5 att l\u00e4mna Cypern. Att f\u00e5 en anst\u00e4llning p\u00e5 Google och flytta till Schweiz verkade vara ett utm\u00e4rkt alternativ.<\/p>\n<h2>Slutsats<\/h2>\n<p>\nOch h\u00e4r n\u00e4rmar vi oss den avslutande delen av artikeln. Ja, jag har misslyckats med intervjun tv\u00e5 g\u00e5nger p\u00e5 Google. Det \u00e4r tr\u00e5kigt. Det skulle s\u00e4kert vara intressant att arbeta d\u00e4r. Men man kan titta p\u00e5 saken fr\u00e5n en annan sida. <\/p>\n<ul>\n<li> Under ett och ett halvt \u00e5r har jag l\u00e4rt mig en oerh\u00f6rd m\u00e4ngd saker kopplade till mjukvaruutveckling.<\/li>\n<li>Jag har haft stor gl\u00e4dje av att delta i programmeringst\u00e4vlingar.<\/li>\n<li>Jag gjorde en resa till Z\u00fcrich i n\u00e5gra dagar. N\u00e4r f\u00e5r jag chansen att \u00e5ka dit igen?<\/li>\n<li>Jag fick en intressant intervjuupplevelse hos ett av v\u00e4rldens st\u00f6rsta IT-f\u00f6retag.<\/li>\n<\/ul>\n<p>\nS\u00e5ledes kan allt som h\u00e4nt under dessa ett och ett halvt \u00e5r enkelt betraktas som tr\u00e4ning, eller f\u00f6rberedelse. Och resultaten av denna tr\u00e4ning har visat sig. Min tanke om att l\u00e4mna Cypern mognade (p\u00e5 grund av vissa familj\u00e4ra omst\u00e4ndigheter), jag gick igenom flera intervjuer p\u00e5 ett annat k\u00e4nt f\u00f6retag och flyttade efter 8 m\u00e5nader. Men det \u00e4r en helt annan historia. \u00c4nd\u00e5 tycker jag att jag b\u00f6r tacka Google f\u00f6r dessa ett och ett halvt \u00e5r jag har arbetat med mig sj\u00e4lv och f\u00f6r tv\u00e5 intressanta dagar i Z\u00fcrich.<\/p>\n<p>Vad kan jag s\u00e4ga till sist. Om du arbetar inom IT, f\u00f6rbered dig f\u00f6r intervjuer hos Google (Amazon, Microsoft, Apple osv.). Kanske kommer du en dag att kunna ta dig in d\u00e4r. \u00c4ven om du inte vill det, s\u00e5 tro mig, du kommer inte att f\u00e5 s\u00e4mre av en s\u00e5dan f\u00f6rberedelse. Just n\u00e4r du inser att du kan (\u00e4ven om det bara \u00e4r under lyckliga omst\u00e4ndigheter) klara en intervju hos ett av dessa f\u00f6retag, kommer m\u00e5nga fler d\u00f6rrar att \u00f6ppna sig f\u00f6r dig \u00e4n innan du b\u00f6rjade din f\u00f6rberedelse. Och allt du beh\u00f6ver p\u00e5 v\u00e4gen \u00e4r ett m\u00e5l, uth\u00e5llighet och tid. Jag \u00f6nskar er lycka till \ud83d\ude42<br \/>\n<br \/>K\u00e4lla: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/419945\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a \u0441\u0442\u0430\u0442\u044c\u0438 \u0437\u0432\u0443\u0447\u0438\u0442 \u043a\u0430\u043a epic fail, \u043d\u043e \u043d\u0430 \u0441\u0430\u043c\u043e\u043c \u0434\u0435\u043b\u0435 \u0432\u0441\u0435 \u043d\u0435 \u0442\u0430\u043a \u043e\u0434\u043d\u043e\u0437\u043d\u0430\u0447\u043d\u043e. \u0414\u0430 \u0438 \u0432 \u043e\u0431\u0449\u0435\u043c \u0438 \u0446\u0435\u043b\u043e\u043c \u044d\u0442\u0430 \u0438\u0441\u0442\u043e\u0440\u0438\u044f \u0437\u0430\u043a\u043e\u043d\u0447\u0438\u043b\u0430\u0441\u044c \u0432\u0435\u0441\u044c\u043c\u0430 \u043f\u043e\u0437\u0438\u0442\u0438\u0432\u043d\u043e, \u0445\u043e\u0442\u044c \u0438 \u043d\u0435 \u0432 Google. \u041d\u043e \u044d\u0442\u043e \u0443\u0436\u0435 \u0442\u0435\u043c\u0430 \u0434\u043b\u044f \u0434\u0440\u0443\u0433\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0438. \u0412 \u044d\u0442\u043e\u0439 \u0436\u0435 \u0441\u0442\u0430\u0442\u044c\u0435 \u044f \u0440\u0430\u0441\u0441\u043a\u0430\u0436\u0443 \u043e \u0442\u0440\u0435\u0445 \u0432\u0435\u0449\u0430\u0445: \u043a\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c \u043f\u0440\u043e\u0445\u043e\u0434\u0438\u043b \u043c\u043e\u0439 \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0438, \u043a\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c \u043f\u0440\u043e\u0445\u043e\u0434\u0438\u043b\u0438 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":52951,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-52950","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.4 - aioseo.com -->\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/sv\/blog\/news\/kak-podgotovitsya-k-sobesedovaniyu-v-google-i-ne-projti-ego-dvazhdy\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\n\t\t<meta property=\"og:locale\" content=\"sv_SE\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u041a\u0430\u043a \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u0438\u0442\u044c\u0441\u044f \u043a \u0441\u043e\u0431\u0435\u0441\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u044e \u0432 Google \u0438 \u043d\u0435 \u043f\u0440\u043e\u0439\u0442\u0438 \u0435\u0433\u043e. \u0414\u0432\u0430\u0436\u0434\u044b | ProHoster\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/sv\/blog\/news\/kak-podgotovitsya-k-sobesedovaniyu-v-google-i-ne-projti-ego-dvazhdy\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-11-19T21:00:00+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-02-18T11:00:46+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47 Hur man f\u00f6rbereder sig f\u00f6r en intervju p\u00e5 Google och misslyckas. Tv\u00e5 g\u00e5nger | ProHoster","description":"","canonical_url":"https:\/\/prohoster.info\/sv\/blog\/news\/kak-podgotovitsya-k-sobesedovaniyu-v-google-i-ne-projti-ego-dvazhdy","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"sv_SE","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u041a\u0430\u043a \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u0438\u0442\u044c\u0441\u044f \u043a \u0441\u043e\u0431\u0435\u0441\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u044e \u0432 Google \u0438 \u043d\u0435 \u043f\u0440\u043e\u0439\u0442\u0438 \u0435\u0433\u043e. \u0414\u0432\u0430\u0436\u0434\u044b | ProHoster","og:url":"https:\/\/prohoster.info\/sv\/blog\/news\/kak-podgotovitsya-k-sobesedovaniyu-v-google-i-ne-projti-ego-dvazhdy","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-11-19T21:00:00+00:00","article:modified_time":"2020-02-18T11:00:46+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"52950","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-24 05:32:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 16:55:29","updated":"2026-01-24 05:32:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/posts\/52950","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/comments?post=52950"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/posts\/52950\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/media\/52951"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/media?parent=52950"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/categories?post=52950"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/tags?post=52950"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}