Tijdens mijn voorbereiding voor de functie van software engineer bij Google hield ik aantekeningen bij. Die heb ik later nog eens bewerkt en dit is wat ervan overbleef. Het gaat om het hele LeetCode-achtige traject, met uiteindelijk een hiring committee, want ik heb zelf alles doorlopen: de phone screen, de programmeerrondes, system design en het gedragsinterview. Het werden dus niet alleen vragen, er staat ook heel wat gedoe over de procedure tussen.
Mensen zijn niet een beetje verdeeld over solliciteren bij Google. Sommigen verdedigen het fel, anderen haten werkelijk alles eraan. Ik vond er ook van alles van, maar daar koop je tijdens zo'n gesprek weinig voor. Je kunt zeggen dat het een loterij is en blijven mopperen, of toch maar uitzoeken hoe die machine werkt en jezelf aan het werk zetten. Ik koos het laatste.
Mijn recruiter vertelde in het allereerste gesprek iets wat nogal bleef hangen. Binnen vijf jaar krijg je drie pogingen en daarna accepteert Google je sollicitatie niet meer. Drie keer dus, voor een hele loopbaan. Ik vertelde het later aan een oud-collega, waarop het ongeveer vijf seconden stil bleef. Dat was voldoende. Verpest dit niet, zo vatte ik die stilte in ieder geval op.
De notities lopen ongeveer mee met wat er gebeurde. Eerst de phone screen, daarna het programmeren en system design. Dan Googleyness and Leadership, de hiring committee en mijn proefinterviews met de hulpmiddelen die ik gebruikte. Helemaal aan het eind kwam team matching nog.
Phone screen
De phone screen vindt plaats in een gedeeld Google Doc. Ik had een IDE verwacht, maar nee, je krijgt een kaal tekstdocument zonder syntax highlighting en zonder autocomplete. Daar typ je 45 minuten echte code terwijl iemand iedere aanslag kan volgen. Mijn twee opgaven waren een sliding window en een variant op binary search, allebei medium.
Ready to ace your next interview?
InterviewMan gives you real-time AI answers during live interviews — undetectable on Zoom, Meet, and Teams.
Try InterviewMan FreeNormaal probeer ik tijdens het programmeren dingen uit, ik rommel wat, herstel een fout en kom zo verder. Maar dan zit je ineens met 45 minuten, dat lege Google Doc en een paar ogen die blijven meekijken. Die gewone werkwijze paste hier dus niet. Achteraf dacht ik vooral: waarom heeft niemand mij vooraf iets over dat Doc verteld?
Later kwam ik nog achter een merkwaardig detail van deze ronde. Als de beoordelaar twijfelt, volgt er soms geen afwijzing maar een tweede phone screen. Ik ken twee mensen die dat overkwam, één kende ik via een Discord voor coding bootcamps, en ze haalden het na die tweede screen allebei. Het hoeft na twijfel dus nog niet voorbij te zijn.
Programmeren
Voor het hele traject maakte ik vooraf 200 LeetCode-opgaven. Dat klinkt nuttig en dat was het ook wel, alleen veel minder dan het had kunnen zijn. Niet omdat de opgaven van Google te moeilijk waren. Het probleem zat ergens anders.
Je moet bij Google eerst zien te ontdekken welke vraag er onder alle woorden verstopt zit. Interviewers voegen bewust context toe die niet nodig is en leggen er dwaalsporen naast. Een oud-collega had me ervoor gewaarschuwd en natuurlijk dacht ik dat ik het wel begreep. Tot ik tijdens een ronde een bekend patroon zag, meteen begon en pas acht minuten later merkte dat ik een totaal ander probleem zat op te lossen.
Terug naar het begin. Het klonk precies als de sliding window-opgave van de avond ervoor, maar dat was het dus niet. De interviewer keek acht minuten zwijgend toe. Ik belde na afloop vanaf de parkeerplaats mijn oud-collega en kreeg alleen te horen: ja, dat had ik je gezegd.
Daar ben ik anders door gaan oefenen. Hardop denken, steeds weer, ook als het overdreven voelt. Meer combinatieproblemen maken. En vooral niet verliefd worden op een patroon omdat je het toevallig gisteren nog hebt gezien. Dat eerste punt bleek belangrijker dan ik dacht, want de committee leest het verslag van de interviewer en de interviewer kan alleen opschrijven wat jij laat horen.
Bij een grafenprobleem bleef ik stil. De feedback? Onduidelijke redenering. Ik wist wel wat ik deed, maar de rest van de wereld niet. Mijn oud-collega las het verslag later en zei het zonder omweg: je hebt hem opgelost en toch staat hier alsof je gokte.
Ook de combinatieproblemen verdienen meer aandacht dan een stapel losse onderwerpen. Ik kreeg een graaf met dynamic programming en later een boom met een hashmap. Alleen binary search of alleen BFS komt haast nooit voorbij. Vijftig van zulke combinatieproblemen zijn nuttiger dan vijfhonderd losse mediums, maar daar kwam ik pas achter nadat ik drie weekenden aan afzonderlijke onderwerpen had weggegooid.
System design
System design is maar één ronde, toch kan die hele ronde aan één ontwerpkeuze hangen. Mijn coach had het altijd over het doorslaggevende inzicht. Dat klonk mij eerst wel erg zwaar aangezet in de oren. Bij mijn vraag was cache invalidation in een gedistribueerd systeem dat ene inzicht en ik zag het met minder dan 30 seconden over. Dus ja, hij had gelijk. Zie je het niet, dan blijft het gesprek steken bij wat lijnen in een diagram en ben je één van die drie pogingen kwijt.
Googleyness and Leadership
Googleyness and Leadership klinkt alsof er van alles achter zit. In werkelijkheid praat je over conflicten in een team, projecten die misgingen en momenten waarop jij verantwoordelijkheid nam, een gedragsinterview dus. Een interviewer zei dat sommige leden van de committee dit deel van het dossier nauwelijks bekijken. Misschien. Je weet alleen niet wie jouw dossier krijgt, dus ik zou het toch voorbereiden.
De hiring committee
Eerlijk is eerlijk, door de hiring committee blijft het ook gewoon een loterij. Vier of vijf engineers die mij nooit ontmoet hadden, namen een beslissing op basis van de verslagen van mijn interviewers. Het zijn vreemden die aantekeningen van andere vreemden over je lezen. Een oud-collega kende iemand die twee keer door het Google-traject ging en elke keer een andere committee kreeg. De prestatie was ongeveer hetzelfde, de uitkomst totaal niet.
Proefinterviews
Aan proefinterviews had ik meer voor de eigenaardigheden van de procedure dan aan welke vragenlijst ook. Mijn oud-collega speelde de interviewer en via Google Meet doorliepen we complete rondes.
Hier speelde ik een beetje vals. Ik werk aan InterviewMan, dus tijdens de oefensessies liet ik onze tool meedraaien zoals een echte kandidaat dat zou doen. Via de audio pikt hij de opgave op, waarna op een overlay die alleen jij kunt zien suggesties voor de aanpak verschijnen. Mijn oud-collega probeerde vijf minuten lang de overlay te vinden. Hij keek naar mijn gedeelde scherm, mijn dock en een opname van de sessie, maar zag niets.
In het oefeninterview voor Googleyness haalde InterviewMan uit het gesprek een verhaal over een conflict dat ik compleet was vergeten. Precies het soort verhaal dat de commissie naar verluidt amper leest, maar dat wel in het dossier moet staan. Tijdens de oefenronde system design wees de tool op een inzicht over caching. Dat bleek voor die vraag juist de doorslag te geven.
Dan de hulpmiddelen in het algemeen. Tools die alleen programmeren ondersteunen, zoals Interview Coder, kosten 299 dollar per maand. Ze helpen bij drie van de vijf rondes en laten je bij system design en het gedragsinterview aan je lot over. InterviewMan ondersteunt alle vijf de rondes voor 12 dollar per maand bij een jaarabonnement. Drie maanden voorbereiding kostten mij 36 dollar, minder dan één week Interview Coder. Inmiddels gebruiken 57.000 mensen de tool, er zijn meer dan 20 stealth-functies en voor zover ik kan nagaan is nog niemand betrapt.
Team matching
Een ja van de commissie is nog geen aanbod. Daarna volgt team matching. Jij en de hiring manager moeten allebei instemmen, en je goedkeuring blijft ongeveer een jaar geldig. Haast is dus niet nodig. Het beste advies dat ik tijdens dit hele traject kreeg, was ook een tikje tegenintuïtief: wacht op een team waarvoor je werkelijk wilt opstaan.
Ready to Ace Your Next Interview?
Join 57,000+ professionals using InterviewMan to get real-time AI assistance during their interviews.

