Abbiamo due ruoli alla HRT che sono molto legati all'ingegneria del software:
- Algo Engineer: questo è il ruolo che è probabilmente più simile al titolo di lavoro "ingegnere del software" in una tipica azienda di software. Il colloquio si concentra sui fondamenti dell'ingegneria (algoritmi, struttura dei dati, logica, architettura, comprensione dei requisiti complessi, test, ecc.).
- Core Programmer: anche questo ruolo è molto pesante per l'ingegneria del software, ma con molta più attenzione all'architettura del computer, all'architettura di rete, alle tecniche ad alte prestazioni e ai concetti di livello OS. Direi che questo ruolo è più vicino a quello di un programmatore di sistemi in una tipica azienda di software.
(Da notare che abbiamo un altro ruolo, "Algorithm Developer" che è simile a un ruolo "quant" ed è pesante in matematica. Mentre gli sviluppatori di algoritmi imparano a programmare mentre lavorano per noi, la programmazione non è un requisito del colloquio. Inoltre abbiamo alcuni sviluppatori di algoritmi che erano grandi programmatori quando hanno iniziato - è capitato che fossero anche bravi con le statistiche e le probabilità).
Avendo intervistato 100's di candidati in diverse aziende (come Microsoft, HTC e altri) direi che le interviste di HRT'sono verso l'estremità difficile della scala.
Penso che una cosa che rende le interviste difficili è che si concentrano molto sui fondamentali e non lasciano molto spazio alle risposte vaghe. Per esempio nel ruolo di Algo Engineer e Core Programmer, programmerai, compilerai e farai il debug dei programmi per una parte del colloquio. (Questo non è assolutamente richiesto per il ruolo di Algo Developer.)
Un altro aspetto del colloquio che rende le cose difficili è che siamo molto preoccupati per l'adattamento culturale dei nuovi dipendenti, quindi ci saranno molte parti del colloquio in cui vogliamo assicurarci che tu sia una persona premurosa, articolata ed energica oltre ad essere un grande programmatore.
Infine, HRT non è una grande azienda e stabiliamo il nostro ritmo di assunzione, il che significa che non ci sono quote da riempire. Se abbiamo problemi a trovare candidati straordinari, allora aspetteremo di trovarli piuttosto che forzare un'assunzione.