På Cygni brinner vi för teknik och systemutveckling. I vår rekryteringsprocess är personlighet och konsultmässighet avgörande men vi kör också tekniktester för dig som är programmerare.
Programmering är extremt viktigt för oss, för att passa in hos oss måste du verkligen gilla att programmera, och du måste gilla att skriva bra kod. Alla våra konsulter sitter nära koden – detta gäller oavsett om du jobbar som ex systemutvecklare, systemarkitekt eller scrum master. Vi snackar kod, vi delar kod, vi andas kod.
Det är många som är nervösa inför teknikintervjun. Skillnaden på att koda ett problem i din favorit-IDE hemma i vardagsrummet kontra att koda på en whiteboard i en rekryteringssituation är extremt stor och jag gör allt för att du ska känna dig avslappnad. Du får exempelvis gärna ta med din egen dator med din egen utvecklingsmiljös för att allt ska gå så smärtfritt som möjligt.
Jag tror inte på att ställa kuggfrågor eller att be dig implementera onödigt avancerade algoritmer. Jag tycker att det är viktigare att testa andra aspekter såsom din förmåga att skriva ”clean code”. När du som kodare lämnar ifrån dig kod kommer många andra utvecklare någon gång interagera med din kod så därför måste koden vara ”clean”, korrekt och förvaltningsbar.
Något annat jag brukar kolla på under teknikintervjun är hur du arbetar med olika verktyg – använder du smarta kortkommandon, debugger, autoformatering, refaktoriseringsstöd osv. Utvecklingsmiljön är bland de absolut viktigaste verktygen för en utvecklare och om du behärskar denna blir du betydligt mer produktiv.
Att tänka på
Till dig som ska gå igenom våra kodtester vill jag till sist ge några tips.
-
Var säker på att du förstår de uppgifter som du ska lösa
Ställ frågor om något är oklart. Systemutveckling handlar mycket om kommunikation med kravställare, andra utvecklare, testare, projektledare osv så fråga på bara. -
Bryt ned problemet i hanterbara delar
När du ska lösa ett programmeringsproblem kan det ingå delar som du inte behärskar, API:er som du inte känner till eller algoritmer som du inte kan utantill. Skapa vettiga abstraktioner och dela upp problemet i mindre hanterbara delar. Att kunna detta är en extremt viktig egenskap hos en duktig programmerare tycker jag. Dessutom, gör som i verkliga livet – Googla ;) -
Tänk högt
Jag vill att du tänker högt och berättar vilken lösning du tänker implementera. Detta påminner mycket om parprogrammering och om jag känner att du är på väg åt fel håll så kommer jag att hjälpa dig att hitta rätt i uppgiften. Om du tar genvägar eller programmerar ”fullösningar” under våra tekniktester så är det okej men då vill jag veta när och varför du gör det samt hur du skulle ha gjort om du haft mer tid. -
Skriv testbar kod
Kod som inte är testbar eller som inte har några tester är inte bra produktionskod. Jag förväntar mig att du testar all kod och att du driver fram koden genom TDD.
Lycka till på intervjun!