Cheat sheet za pripravnika: korak-po-korak rješenja za probleme Google intervjua

Cheat sheet za pripravnika: korak-po-korak rješenja za probleme Google intervjua

Prošle godine sam zadnjih par mjeseci proveo pripremajući se za intervju za praksu u Google-u (Google Internship). Sve je prošlo dobro: dobio sam i posao i odlično iskustvo.

Sada, dva mjeseca nakon stažiranja, želim podijeliti dokument koji sam koristio za pripremu za intervjue. Za mene je to bilo nešto kao varalica prije ispita. Ali proces kreiranja dokumenta i stalna provjera korak po korak pomogao mi je da zapamtim sve najvažnije stvari.

Vjerujem da svako može uspješno obaviti intervju u velikim tehnološkim kompanijama, samo je potrebno neko vrijeme da se shvati kako ti intervjui funkcioniraju i da se pripremi za njih.

Moja varalica će vam biti dovoljna da se pripremite za bilo koji tehnički intervju, bilo da se radi o Google-u, startupu ili vašoj prvoj praksi. To će vam pomoći da se osjećate sigurnije kako tokom pripreme tako i tokom samog intervjua.

Preporučujemo besplatne intenzivne kurseve programiranja za početnike:
Osnove Jave za samo 3 dana — 8.–10. avgusta;
Pisanje prvog modela mašinskog učenja — 12.–14. avgusta;
Razvoj Messenger-a u Pythonu — 15–17. avgusta

Tehnički intervju Cheat Sheet

Web stranice

Pramp

Na ovom resursu možete vježbati intervjuisanje. Učesnici se naizmjence međusobno intervjuišu (postoje audio i video kanali) i mogu koristiti zajednički uređivač koda. Najvjerovatnije vam prvi takvi intervjui neće biti laki i osjećat ćete se neugodno. Ali što više vježbate, to ćete biti sigurniji da ih prođete, a pravi intervju će se nakon toga činiti lakim.

Codesignal

Dobra pitanja iz stvarnih intervjua na Facebooku, Googleu, Microsoftu, itd. Preporučujem korištenje ove stranice zajedno s resursima za vježbanje kodiranja, uključujući učenje o algoritamskoj složenosti.

Knjige

Razbijanje intervjua za kodiranje

Moji omiljeni dijelovi su Mreža za pripremu intervjua (stranica 32), odjeljak o ponašanju na intervjuu i Pitanja za intervju: strukture podataka (stranice 88–107). Ako ranije niste naišli na pojam „algoritamska složenost“, sada je vrijeme; knjiga pruža odličan uvod u ovu temu.

Šta raditi na intervjuu?

  • Ostanite otvoreni za komunikaciju i odgovorite iskreno. Kada razmišljate o nekom pitanju, razmišljajte naglas, opišite svoje misli;
  • Dodajte malo humora svojoj komunikaciji, ne bojte se šaliti. Pokušajte uživati ​​u komunikaciji.;
  • Zapišite važne informacije.;
  • Postavljajte pitanja i pokušajte iskoristiti ono što ste naučili od anketara.

Intervju korak po korak

Evo kontrolne liste za pripremu odgovora na intervju. Nije neophodno koristiti sve tačke, preskočite one koje vam se čine nepotrebnim. Glavna stvar je koristiti zdrav razum. Čak i ako niste stigli do samog kraja liste, ništa loše se neće dogoditi.

  1. Pročitajte pitanje.
  2. Analizirajte sve podatke, ulazne i izlazne, i obratite pažnju na nuspojave.
  3. Pojasnite suštinu zadatka i iznesite svoje pretpostavke kako bi anketar razumio tok vaših misli. Na primjer, kolika će količina podataka biti i ko će biti korisnik.
  4. Pronađite primjer i predočite ga ispitivaču kako biste bili sigurni da ste ispravno razumjeli zadatak. Nemojte se plašiti da potrošite vreme udubljujući se u uslove problema. Što bolje razumete, brže ćete pronaći optimalno rešenje.
  5. Razvijte algoritam. Pokušajte riješiti sličan, ali manje složen problem. Zapišite svoje misli, pogledajte primjere u svom nacrtu.
  6. Prođite kroz svoj algoritam s primjerima kako biste bili sigurni da kod radi ispravno. Provjerite sve kritične i rubne slučajeve.
  7. Procijenite složenost algoritma iu smislu vremena i memorije.
  8. Ako ste uspjeli doći do efikasnijeg rješenja problema, vratite se na tačku 4.
  9. Napišite rješenje koristeći odabrani algoritam. Podijelite problem na nekoliko metoda ako je to prikladno u određenom slučaju.
  10. Provjerite ima li koda grešaka.
  11. Razmotrite kako implementacija algoritma rješava kritične i rubne slučajeve.
  12. Provjerite implementaciju pomoću primjera, pregledajte kod za greške.
  13. Kada ste sigurni da kod radi ispravno, provjerite njegovu čistoću i stil.

To je sve!

izvor: www.habr.com