Bejutni a Google-höz - Csavar

írta: lajthabalazs, 4 éve

Szóval sosem tűnt úgy, hogy lenne elég időm becsülettel felkészülni egy Google interview-ra, a munka, a családi ház felújítás, a család ... Így a dolog kínosan húzódott. Aztán egy ismerősöm startupjához keveredtem, ami nem váltotta be maradéktalanul a reményeimet, így nyitva tartottam a szemem a további lehetőségek iránt. Nem kellett nagyon keresni, LinkedIn-en jöttek folyamatosan az ajánlatok. Többek közt jelezte az Amazon, hogy turnéznak Budapesten, és szívesen látnak. Az eljárás alapos volt. Egy telefonos kör a HR-rel, utána 90 perces online kör két algoritmizáló feladattal (a felület elég béna volt, az automatikus tesztek futtatása után be is kellett küldeni a megoldást, és az elsőnek a végleges megoldását nem küldtem be, csak egy részeredményt, szerencsére a második volt a nehezebb, és az hibátlan lett). Aztán még egy HR-es kör, amikor meghívtak a személyes interview-ra, és küldtek egy csomó felkészítő anyagot. És utána jött a furcsa rész: egy órában egy másik HR-essel még egyszer végigmentünk ezen az anyagon, hogy biztosan értem-e, hogy milyen lesz a személyes interview, és hogy tudom-e hogyan kell felkészülni.

Végül persze felkészülni megint nem volt időm, úgyhogy erősen gondolkodtam, hogy menjek-e, mert vidékről kellett felutazni, meg a kieső munkanap, meg a szinte biztos kudarc. De aztán úgy döntöttem, hogy egy este és éjszaka a feleségemmel, meg a nyerhető tapasztalat megéri. Bejelentkeztem egy időpontra, szerencsére még volt szabad, foglaltam egy telekocsit, és mentem haza. A feleségem persze végül nem tudott eljönni a gyerekek mellől (vidéken nyaraltak), úgyhogy egyedül élvezhettem az üres házat és még készülhettem egy keveset. Az algoritmusoktól nem féltem annyira, viszont igértek rendszertervezés kérdést, ami kicsit aggasztott. De ahogy nézegettem a kiadott kérdés-válasz párokat, megkönnyebbültem, ilyet már csináltam, és a mintákban nem láttam olyan megoldásokat, amik ne jutottak volna eszembe. Ráadásul sokat segítettek a válasz strukturálásában, úgyhogy hasznos volt.

Másnap BKV-vel mentem a NewYork Palace-be, ahol az Amazon előretólt helyörséget alakított ki: itt szállt meg az interview-ztató csapat, itt foglalt tárgyalókat, és ide reptette be a közeli országokból hívott jelölteket. Egy járatkimaradás miatt elvesztettem a biztonsági bufferemet, de azért sikerült időben érkezni. Betereltek egy tárgyalóba, sok jegyzettömb, fehér tábla és víz fogadott, a HR-es felvázolta a továbbiakat, és magamra hagyott. 8-12-ig négy Amazonos jött egyesével, 5 perces szünetekkel. Három mérnökkel és egy managerrel beszéltem.

Az első három kör volt az algoritmizálós. Egy rövid beszélgetés során feltették a kötelező személyiségi kérdéseket: idézzek fel egy esetet, amikor időnyomás alatt a minőségből kellett feláldoznom, vagy olyat, amikor konfliktusom volt egy kollégával, egy felettesem elégedetlen volt velem, egy problémát proaktívan oldottam meg, egy ügyféllel tárgyaltam, stb. Ilyen kérdésből mind a négyen tettek fel ketőt-kettőt, úgyhogy jó mélyre kellett ásnom, de elégedettek voltak a történetekkel. Ezt követték a programozós feladatok. Fehér lapon kellett szintaxis helyes Java kódot írni egyszerű feladatokara. Az első kettő triviális volt, konkrét feladatot nem oszthatok meg, de a példák a HackerRank Easy kategóriájának a tetejéhez illeszkedtek. "Implementáltam" a naív megoldást, aztán megbeszéltük az idő és memóriakomplexitást, és belefért egy kis optimalizálás is, de ez már csak szóban. Nem kellett segíteniük, ment minden magától. A harmadik feladat trükkös volt. Elsőre látszott, hogy nincs annyira specifikálva, mint a többi, de ugyanúgy álltam hozzá, és adtam papíron egy optimális megoldást. És akkor jött a hideg zuhany. Megkérdezte az interview-ztató, hogy mi van akkor, ha az egyik megadott szabályt módosítjuk. Mondtam hogy az akkor egy másik feladat. És ekkor derült ki, hogy ez igazából egy architekturális feladat lett volna. Talán 10 percem maradt összerántani néhány osztályt és interface-t, ami megadja a kellő rugalmasságot. Megbeszéltük, hogy akkor viszont szuboptimális lesz a megoldás. Mondta hogy rendben, és a 8 percben sikerült lekörmölni a megoldást, és elmagyarázni, hogy hogyan valósítja meg a kért bővíthetőséget. Mindenki örült, én megtörölköztem.

A negyedik kör sétagaloppnak indult: olyan problémára kellett rendszertervet készíteni, amit már konkrétan megoldottam egy egyetemi projektben. Így inkább a kommunikáció jelentett kihívást, néha kicsit elbeszéltünk egymás mellett, és gyakran váltottunk látószöget: volt architektúra, technológia, adatbázis, algoritmus, REST API, de úgy éreztem sikerült minden kérdésre kielégítő választ adnom. A kávészünetet nem használtam ki, volt kávé meg süti, de nem szeretek ilyen helyzetekben enni, megtöri a lendületet. Utána hazafelé meg már azért nem volt kedvem, mert izgultam, hogy hogy fog sikerülni. Azt igérték, hogy egy héten belül válaszolnak.