
Prošle godine sam posljednja dva mjeseca proveo pripremajući se za intervju za praksu u Google-u (Google Internship). Sve je prošlo dobro: dobio sam posao i odlično iskustvo.
Sada, dva mjeseca nakon prakse, želim podijeliti dokument koji sam koristio za pripremu za intervjue. Za mene je ovo bilo nešto poput špicarice prije ispita. No, proces izrade dokumenta i stalna korak-po-korak provjera pomogli su mi da zapamtim sve najvažnije.
Siguran sam da svaka osoba može uspješno proći intervju u velikim tehnološkim kompanijama, samo je potrebno malo vremena da se shvati kako su ti intervjui strukturirani i pripremiti se za njih.
Moje špicarice bit će dovoljno za pripremu za bilo koji tehnički intervju, bilo da je to Google, startup ili vaša prva praksa. Pomoći će vam da se osjećate sigurnije i tijekom pripreme i na samom intervjuu.
Preporučujemo besplatne intenzivne programe programiranja za početnike:
— 8–10. kolovoza;
— 12–14. kolovoza;
— 15–17. kolovoza
Špicarica za tehnički intervju
Web stranice
Na ovoj platformi možete vježbati prolazak intervjua. Sudionici se naizmjenično intervjuiraju (tu su audio i video kanali) i mogu koristiti zajednički editor koda. Vjerojatno će vam na prvim takvim intervjuima biti nezgodno, ali što više vježbate, to ćete ih sigurnije prolaziti, a pravi intervju nakon toga će vam se činiti lakšim.
Dobra pitanja s pravih intervjua u Facebooku, Googleu, Microsoftu itd. Preporučujem korištenje ove stranice zajedno s resursima za vježbanje kodiranja, uključujući proučavanje algoritamske složenosti.
Knjige
Cracking the Coding Interview
Moji omiljeni dijelovi: 'Interview Preparation Grid' (str. 32), odjeljak o ponašanju na intervjuu, te 'Interview Questions: Data Structures' (str. 88–107). Ako ranije niste čuli za pojam 'algoritamska složenost', sada je pravo vrijeme, knjiga odlično uvodi u temu.
Što raditi na intervjuu?
- Nemojte se isključiti iz komunikacije i odgovarajte iskreno. Kada razmišljate o pitanju, razmišljajte naglas, opišite tijek svojih misli.
- Dodajte malo humora u komunikaciju, ne bojte se zafrkavati. Pokušajte uživati u razgovoru.
- Bilježite važne informacije.
- Postavljajte pitanja i nastojte koristiti ono što ste naučili od intervjuera.
Intervju korak po korak
Evo check-liste za pripremu na odgovore tijekom intervjua. Nije nužno koristiti sve stavke, preskočite one koje se čine suvišnima. Najvažnije je osloniti se na zdravu pamet. Čak i ako ne dođete do kraja popisa, ništa strašno se neće dogoditi.
- Pročitajte pitanje.
- Analizirajte sve podatke, ulazne i izlazne, i obratite pažnju na nuspojave.
- Razjasnite bit zadatka i izložite svoje pretpostavke kako bi intervjuera razumio tok vaših misli. Na primjer, koji će biti obim podataka i tko će biti korisnik.
- Pronađite primjer i izložite ga intervjuera kako biste bili sigurni da pravilno razumijete zadatak. Ne bojte se potrošiti vrijeme na razjašnjavanje uvjeta zadatka. Što bolje ga razumijete, brže ćete pronaći optimalno rješenje.
- Razvijte algoritam. Pokušajte riješiti sličan, ali manje složen problem. Zapisujte razmišljanja, analizirajte primjere u skiciru.
- Prođite kroz svoj algoritam s primjerima kako biste osigurali da kod ispravno radi. Provjerite sve kritične i rubne slučajeve.
- Procijenite složenost algoritma prema vremenu i memoriji.
- Ako ste smislili učinkovitije rješenje problema, vratite se na stavku 4.
- Napišite rješenje koristeći odabrani algoritam. Podijelite problem na nekoliko metoda, ako to dopušta konkretan slučaj.
- Provjerite kod na greške.
- Razmislite kako implementacija algoritma rješava kritične i rubne slučajeve.
- Provjerite implementaciju na primjeru, pregledajte kod na greške.
- Kada se uvjerite da kod ispravno radi, provjerite njegovu čistoću i stil.
Eto, to je to!
Izvor: habr.com
