tisdag 26 februari 2008

Case-intervju för programmerare

Att gå på intervju för en utvecklartjänst är lite extra intressant. Förrutom att vara verka kompetent och ha rätt inställning handlar det också om för arbetsgivaren att försäkra sig om att potentialen finns. Att kompetensen som kandidaten pratar om och försöker styrka faktiskt har lite substans bakom sig.

I detta läge är det inte helt ovanligt att företag använder olika former av case, dvs mindre uppgifter, som den arbetssökande får försöka lösa.

Det handlar inte om att ha ett perfekt rätt svar, utan det handlar mer om att visa att man har ett någorlunda hum om vad det handlar om. Framförallt är det viktigt på vilket sätt man angriper problemet och resonerar runt det.

Några olika varianter finns. Den ena är små programmeringsuppgifter som typiskt är väldigt enkla om du har koll på vad det handlar om, det andra är större uppgifter där det inte finns ett tydligt svar på samma sätt. Utan det handlar mer om hur man kommer fram till ett svar.

De små programmeringsuppgifterna rör sig inte sällan om någon funktion som skall skrivas på whiteboard som involverar rekursion eller lite pekare (gärna båda två i kombination). Detta trots att intervjun gäller för en roll med 100% Java.

Liknande uppgifter om databaser är viktiga är typiskt att utifrån ett scenario tänka fram vilka objekt och relationer det handlar om, skissa upp vilka tabeller det resulterar i och sen skriva en SQL-fråga för att få fram något klurigt.

De lite större uppgifterna beror mer på vad för roll det handlar om. Det kan vara i stil med "Hur skulle du utveckla en applikation till en kund som behöver följande ...?". Då handlar det mer om att i stora drag förklara val av teknologi eller plattform, arkitektur och flöde. Inte helt ovanligt att följdfrågor handlar om tidsestimering av nyss presenterade lösning.

Jag har personligen haft samtliga ovan exempel under intervjuer (även fler i samma tillfälle).

För att få lite insikt i hur personen på andra sidan bordet tänker är ett hett tips att läsa artikeln The Guerrilla Guide to Interviewing av Joel Spolsky.

Intressant och kul läsning, och det stämmer överens ganska väl med min nyvunna erfarenhet av intervjuer för utvecklartjänster. Det punkten det skiljer sig mot svenska företag är framförallt antalet personer man träffar. Det är sällan man har ett fullt dagsschema och går på 5-6 intervjuer hos ett och samma företag. Söker du däremot till Microsoft med placering i USA, då kan du räkna med det.

Managementkonsultföretag har mer regel än undantag att använda case, fler av företagen har till och med övningscase (bl.a. här, här och här) uppe på sina hemsidor för man skall veta vad som förväntas av en. Dessa case är dock knappast relevanta för utvecklarroller på samma sätt som de jag beskrev innan.

Inga kommentarer: