ok deci Jake tot îmi spunea. la cină. pe mesaje pe la 1 noaptea. la un bar unde aveam queso pe degete și abia dacă eram atent. "te pregătești pentru FAANG de parcă ar fi o singură companie și nu e." eu dădeam din cap și apoi mergeam acasă și făceam exact invers. 350 de probleme leetcode. patru luni. o singură abordare pentru toate cele cinci companii. probabil ghicești cum s-a terminat.
runda de system design la Amazon. ea zice "warehouse order routing system" și eu deschid aplicația de whiteboard. load balancer, Postgres, Redis pentru caching, săgeți peste tot. după cincisprezece minute mă uit la propria diagramă gândindu-mă sincer e destul de bună. (nu era destul de bună lol.) "ce se întâmplă când doi pickeri iau același produs în aceeași secundă." gol. gol total. distributed locking, aveam un card Anki pentru asta, l-am revizuit de minimum cincizeci de ori. gura nu mi se mișca. playlist-urile de system design de pe YouTube timp de patru luni m-au învățat cum să desenez căsuțe pe ecran. nu cum să gândesc când cineva schimbă întrebarea. mi-a dat treizeci de secunde. treizeci de secunde de tăcere într-un interviu e brutal, nu știu dacă ai trecut prin asta. stai la birou în pantaloni de trening și vrei să te evapori. ea a oftat în microfon și da. am știut. Amazon mi-a trimis respingerea două zile mai târziu. nouă cuvinte. "nu a demonstrat profunzime în system design." am citit-o la 7 dimineața ținând în mână pad thai rece în bucătărie pentru că nu puteam să dorm. colegul meu de apartament Kevin a trecut prin bucătărie și m-am prefăcut că mă uitam la aplicația de vreme.
amicul meu Jake a intrat la Google cam cu șase luni înainte să se întâmple respingerea asta și eu am reacționat fiind cel mai prost prieten din lume. nu îi răspundeam la telefon. săptămâni întregi. îmi trimitea mesaj "cină?" și îl lăsam pe seen pentru că să stau la masă cu cineva care a fost acceptat în timp ce eu aveam o respingere deschisă pe telefon nu era ceva ce puteam suporta. groaznic, știu. când i-am zis în cele din urmă despre Amazon a RÂS. nu un râs din milă. unul real. pentru că și el a înghețat la o întrebare de caching în prima lui rundă la Google. patruzeci de secunde de liniște totală în timp ce intervievatorul se uita. respins. a intrat a doua oară după ce și-a aruncat toată strategia și a reconstruit totul de la zero. Jake citește manuale de informatică în vacanță (manuale reale, nu articole de pe Medium, cărți reale cu demonstrații) și tot i s-a blocat creierul într-un interviu live. deci e o problemă de pregătire. nu de cunoștințe.
uite care e faza cu leetcode care tot mă enervează. pe reddit zice 300 minimum. eu am făcut 350. puteam să identific un sliding window înainte să îmi facă efectul cafeaua. degeaba. și motivul e că fiecare rundă la companiile astea are un follow-up unde îți schimbă constrângerile după ce rezolvi prima parte. dintr-o dată input-ul nu mai încape în memorie. sau serviciul are nevoie de zece mii de request-uri pe secundă și batching-ul nu e o opțiune. sau ai trei regiuni care scriu simultan și tu trebuie să rezolvi conflictele singur. prima parte e doar "poate omul ăsta să scrie cod" și follow-up-ul e evaluarea propriu-zisă. am făcut 350 de probleme câte o dată fiecare. nu m-am întors niciodată. nu am extins niciuna. doar bifam căsuțe. gata, rezolvat, următoarea, mai departe.
Jake e cel care mi-a reparat pregătirea și m-am certat cu el pe fiecare punct în parte. ideea lui mi s-a părut nebună la momentul respectiv. oprește-te din probleme noi. oprește-te complet. în timp ce lumea pe reddit posta că a ajuns la 500 el voia să mă întorc prin lista mea de probleme rezolvate. a ales cincizeci de probleme vechi și a început să inventeze follow-up-uri pe Zoom în fiecare seară. soția lui își punea copilul la culcare în camera de alături și Jake mă întreba liniștit cum gestionez un array de două miliarde de elemente cu patru gigi de RAM. "trei centre de date, eventual consistency, ce se strică." înghețam constant în sesiunile alea de practică. fața îmi ardea, mâinile făceau treaba aia ciudată de tremurat, camera pornită, Jake stând acolo cu cafeaua așteptând să îmi revin. primele două săptămâni am vrut să renunț în fiecare seară. pe undeva prin săptămâna trei ceva a făcut click. am început să ghicesc follow-up-ul înainte să îl zică. rezolvam problema de bază și creierul meu sărea automat la "ok dar dacă input-ul era enorm" sau "dar dacă doi writeri accesau simultan." reflexul ăla. saltul automat la constrângeri înainte să fii întrebat. asta e de fapt ce caută companiile astea. am construit asta în trei săptămâni cu Jake țipând la mine pe Zoom. patru luni de grind singur nu au produs nimic pe aproape.
celălalt dezastru au fost sursele de system design și asta a fost pură lene din partea mea. am studiat exclusiv de pe YouTube. URL shortener, chat app, news feed. același conținut reciclat pe care îl vede toată lumea din 2022. în runda mea de la Amazon intervievatorul a întrebat despre pipeline-uri de ștergere GDPR. audit logging. data residency pe mai multe regiuni. cuvântul compliance literalmente nu îmi intrase niciodată în cap într-un context de design. niciodată. sunt absolut serios. Jake mi-a zis după respingerea lui că runda lui de Google a petrecut douăzeci de minute continue pe cache invalidation și split brain recovery. nu știam ce înseamnă split brain. am stat în Civic-ul meu în parcare după aceea căutând terminologie de baze de date pe telefon. telefon cald. mâini reci. ăla a fost punctul cel mai de jos pentru mine. întrebările la companiile astea au evoluat și eu am intrat cu răspunsuri de acum doi ani.
behavioral. ok partea asta e jenantă. runda de behavioral e probabil cea mai previzibilă rundă din tot procesul și am ignorat-o pentru că am crezut că experiența mea profesională vorbea de la sine. Amazon își postează principiile de leadership pe site-ul lor. Glassdoor îți spune care apar. îți mapezi poveștile pe fiecare principiu. am înțeles toate astea în teorie și apoi am mers și mi-am pregătit opt povești care erau toate despre cum aveam dreptate și salvam situația. povești de erou. fiecare. Meta folosește CAR în loc de STAR și poveștile mele erau structurate greșit pentru formatul lor. am pierdut puncte pe ceva atât de stupid. Google m-a lovit cu "spune-mi despre o situație în care ți-ai dat seama că greșeai în legătură cu ceva important" și eu aveam literalmente zero povești în care greșeam pentru că de ce mi-aș repeta cele mai proaste momente. Jake îmi zisese să pregătesc povești de eșec cu săptămâni înainte. am zis nu. Google nu e de acord cu mine pe tema asta lol. când în cele din urmă mi-am reconstruit poveștile și am pus cifre concrete în ele, "am redus timpul de deploy de la trei săptămâni la patru zile" a devenit go-to-ul meu la două companii separate. aceleași fapte pe care le aveam înainte, literalmente nimic nou, doar încadrate diferit. a funcționat de ambele ori.
programarea aproape m-a distrus pe lângă toate celelalte. Google a fost cinci săptămâni de la apelul cu recruiterul până la decizia comitetului. Amazon trei săptămâni. prietena mea Sarah a primit onsite-ul de la Meta la zece zile după phone screen. ZECE ZILE. nu poți să te pregătești pentru o singură companie pe rând, asta e capcana în care am căzut. am încercat să merg secvențial și până când m-am simțit pregătit pentru Amazon runda de la Google era deja în calendar și mă zbăteam între principii de leadership și profunzime în system design și format CAR și orice alt framework voia fiecare companie. eu și Jake am făcut un document comun listând fiecare subiect pe care îl testează toate trei companiile. am evidențiat ce se suprapunea. am exersat întâi ce se suprapunea, am lăsat chestiile specifice companiilor pentru seara dinainte ca la tocit în sesiune. stând pe podeaua sufrageriei lui la miezul nopții cu fișe de studiu împrăștiate pe masa de cafea. haotic. dar a funcționat.
am început să folosesc InterviewMan în timpul rundelor mele reale după ce Jake mi-a menționat despre el. overlay pe ecran care nu apare când îți partajezi ecranul, captează audio prin microfon, pune sugestii pe ecran în câteva secunde. într-o rundă de system design a semnalat un unghi de caching chiar înainte ca intervievatorul să îl aducă în discuție și am arătat pregătit în loc să intru în panică. doisprezece dolari pe lună. nimic comparat cu sutele pe care le-am aruncat pe cursuri care m-au învățat să desenez diagrame frumoase de care nimănui nu îi păsa. nu înlocuiește faptul că trebuie să știi lucruri totuși. tot trebuia să îmi apăr fiecare răspuns când insistau pe detalii. dar mi-a ținut creierul departe de modul de blocare totală cum s-a întâmplat la Amazon și doar asta a meritat.
dacă ar trebui să zic un singur lucru cuiva care începe pregătirea pentru FAANG acum. nu mai trata totul ca o singură companie. cinci companii. cinci structuri diferite pentru cum intervievează și evaluează oamenii. m-am pregătit generic și am fost distrus. Jake a ales Google specific a doua oară și a intrat. alege două pe care chiar le vrei, învață cum își desfășoară procesul cele două, aplică peste tot în rest ca să prinzi experiență și să capeti confort. asta a funcționat pentru noi. mi-a luat o respingere și patru luni pierdute să îmi dau seama dar asta e.
Ready to Ace Your Next Interview?
Join 57,000+ professionals using InterviewMan to get real-time AI assistance during their interviews.
