Beste antwoord
Ik heb een paar weken geleden een sollicitatiegesprek gevoerd voor een stage. Ze maken meestal een telefoonscherm, maar hebben het blijkbaar voor mij overgeslagen. Ik werd uitgenodigd om naar hun kantoor te komen voor interviews op locatie.
Het eerste interview was met een technische manager die zich concentreerde op technische gesprekken, dus we praatten over technologieën waarmee ik heb gewerkt, voor- en nadelen van elk, hoe ik een tech stack zou kiezen enz. Ik voelde dat dit bedoeld was om te evalueren hoeveel je weet buiten het schoolcurriculum. Hierna kreeg ik een vraag over algoritmen, gemodelleerd naar load balancing-servers.
Het tweede interview ging volledig over codering. De vragen waren eenvoudig, maar mijn interviewer zei dat ze op zoek waren naar hoe ik productiecode zou schrijven. Ik heb tijdens het interview ongeveer 3-4 vragen opgelost.
De laatste was de moeilijkste en richtte me veel op shell-scripting, OS-basisprincipes, foutopsporing in segfaults, enz. En ik werd ook gevraagd om een werkende oplossing te coderen voor een NP-hard probleem. Het leek erop dat de interviewer me probeerde te pushen om te zien hoeveel ik op elk gebied kan doen. Aan het einde hiervan was ik nog steeds niet helemaal zeker hoe dit ging.
(Ik kreeg een gratis Uber-hoodie toen ik hun kantoor verliet: D)
Mijn recruiter belde mij over een paar dagen en zeiden dat ze me een bod wilden doen. Maar daarvoor heeft Uber een interview met de specifieke teammanager. Ik had een Skype-gesprek met hem dat voornamelijk ging over mijn eerdere ervaringen en interessegebieden, evenals een redelijk moeilijke codeervraag over combinaties.
Ik kreeg kort daarna een formeel bod. Ik hoop dat dit helpt 🙂
Antwoord
Ik heb een maand geleden geïnterviewd voor een fulltime functie als software engineer bij Uber. Ik kreeg de kans op een sollicitatiegesprek via een doorverwijzing van een vriend.
Ik was eerst gepland voor een ronde van telefonische screening die werd gegeven door een technische manager van Uber. Er werd gevraagd naar mijn technische achtergrond, mijn werk en twee codeerproblemen. Het ging erg goed en ik werd een uur na het telefoongesprek uitgenodigd voor een interview op locatie.
Het interview op locatie vond twee weken later plaats en duurde ongeveer 4,5 uur. 4 mensen daagden me uit met veel technische vragen, zoals whiteboard-codering en systeemontwerpvragen. Iedereen was best vriendelijk en liep behoorlijk op tijd binnen, dus er was niet veel pauze tussendoor. Het laatste technische interview was een praktisch interview – ik werd gevraagd om een echt probleem op te lossen en het vervolgens te implementeren. Voorafgaand aan het eigenlijke codeerwerk had de interviewer een grondige discussie met mij over de details van alle niveaus om er zeker van te zijn dat het een redelijke oplossing was die binnen enkele minuten kon worden gedaan. Het probleem was niet super moeilijk en de oplossing zou suboptimaal kunnen zijn, maar je moet het laten werken. Daarom kun je maar beter een hands-on engineer zijn op het werk en op een efficiënte manier echte code schrijven (keuze van editor, API-lookup, foutopsporingsvaardigheden, enz.) Voor mezelf gebruik ik Vim elke dag en dat heeft me enorm geholpen. Na de 4e ronde van het technische interview kreeg ik ook de kans om met recruiter en manager te praten voor verschillende vragen en zorgen, die ze heel goed hebben aangepakt.
Ik kreeg de volgende dag na het onsite interview een aanbieding die ik na enige onderhandeling met plezier accepteerde. Een ding dat ik graag zou willen opmerken, is dat ik overweldigd was door de efficiëntie van het bedrijf tijdens het hele wervingsproces. personeelsmanager en een paar recruiters met wie ik werkte, reageerden altijd zeer snel binnen een paar minuten. Trouwens, ik woon in South Bay en het woon-werkverkeer van / naar San Francisco werd natuurlijk gedekt met Uber, waardoor de sollicitatiegesprekervaring nog aangenamer werd 🙂