Progettazione dei Colloqui

Il Ciclo di Colloqui per Ingegnere Staff: Dove i Cicli per Senior Sbagliano

ClarityHire Team(Editorial)11 min read

Perché la maggior parte dei cicli per staff generano offerte da senior

La modalità di fallimento più comune nell'assunzione di ingegneri staff è eseguire il ciclo per senior con una fase di system design più lunga e chiamarla ciclo per staff. Ogni intervistatore valuta il candidato rispetto agli standard da senior. La discussione finale riguarda se il candidato è un "senior forte". Il responsabile dell'assunzione spinge per lo staff perché il ruolo è aperto a livello staff. L'offerta viene scalata verso il basso oppure viene proposta a livello staff a qualcuno che avrà difficoltà entro sei mesi.

Il motivo per cui questo continua ad accadere è che la rubrica per "senior" è ben compresa — codifica solida, possiede un servizio, fa mentoring ai junior, progetta feature end-to-end — mentre la rubrica per "staff" non lo è. L'ingegneria staff è la disciplina di scegliere il problema giusto, allineare un gruppo di team dietro una soluzione, ed essere corretti sui compromessi tecnici a una portata dove sbagliare è costoso. Nessuna di queste cose è visibile in una fase di coding di 45 minuti.

Questo articolo è un disegno di ciclo per staff e oltre. Assume che tu gestisca già un ciclo per senior competente e voglia testare le dimensioni aggiuntive che distinguono lo staff da un senior veloce. Non assume alcuna dimensione aziendale particolare.

Le quattro dimensioni che davvero distinguono lo staff

Una rubrica utile per lo staff valuta rispetto a queste, con ancoraggi espliciti a livello senior, staff e senior staff:

  1. Portata del giudizio. Il candidato riesce a identificare il problema giusto su cui lavorare, in un dominio che non ha visto prima, date informazioni parziali e vincoli concorrenti? Gli ingegneri senior risolvono il problema che gli dai. Gli ingegneri staff ti dicono quale problema risolvere.
  2. Qualità delle decisioni architettoniche. Riescono a ragionare su un sistema a una granularità dove i compromessi sono reali — costo, latenza, blast radius, accoppiamento organizzativo — e difendere una scelta per iscritto? Questo non è lo stesso che ricordare un design da libro di testo.
  3. Influenza tra team. Riescono a descrivere un momento in cui hanno cambiato la direzione del lavoro al di fuori del loro team diretto, e articolare i meccanismi — il documento, la riunione, il prototipo — che lo hanno reso possibile? "Ho dato feedback in una review" non è a livello staff. "Ho scritto il design doc che ha consolidato tre proposte concorrenti in una" lo è.
  4. Mentoring tecnico a distanza. Riescono a innalzare il livello degli ingegneri che non gestiscono, su argomenti sui quali non sono l'esperto del team? Questo è lo standard che separa lo staff da un ingegnere senior con anni in più.

Ogni fase del ciclo dovrebbe essere progettata per sondare una o due di queste, non per ritestrare lo standard da senior.

Il ciclo, fase per fase

Totale: ~6 ore di tempo del candidato, ~10 ore di tempo degli intervistatori. Sei fasi:

Fase 1: Screening del responsabile assunzioni (60 min)

Non una chat di fit. Una conversazione operativa su un vero problema nello stack, formulata in modo abbastanza vago da richiedere al candidato di fare domande prima di proporre nulla. Il responsabile dell'assunzione è in ascolto per: riescono a restringere il problema prima di risolverlo? Fanno domande su vincoli che un senior salterebbe — struttura organizzativa, costo on-call, rischio di migrazione?

Questa fase sostituisce la fase "parlami di te" condotta dal recruiter. Salva la logistica per una separate telefonata di programmazione di 20 minuti.

Fase 2: Un documento di progettazione scritto (4–8 ore, asincrono)

La fase con il segnale più elevato in un ciclo per staff, e quella che la maggior parte delle aziende salta perché si preoccupa sia troppo lavoro chiederlo a un candidato. Non lo è. I candidati senior routinariamente completano take-home di 2 ore; un candidato staff completa un esercizio di progettazione focalizzato perché l'artefatto è anche un modo per loro di valutare il ruolo.

Il prompt: un problema reale-ish, intenzionalmente sottospecificato dal vostro dominio. "Vogliamo introdurre un workflow engine per l'orchestrazione che il nostro team di pagamenti attualmente fa in Lambda ad hoc. Scrivi un documento di 3–8 pagine che sostiene un approccio, nomina le alternative che hai considerato, e identifica i tre rischi principali."

Cosa il documento vi dice che un whiteboard di 60 minuti non può:

  • Come il candidato struttura un argomento quando ha tempo per pensare.
  • Se citano compromessi che mappano ai vostri vincoli effettivi, o danno risposte vaghe su principi generali.
  • Se identificano modalità di fallimento che il team non ha ancora discusso.
  • Come scrivono per un pubblico di altri ingegneri staff, che è la maggior parte del lavoro.

Valutate il documento sulla sua propria rubrica, prima del prossimo round. Un documento debole non viene salvato da un whiteboard forte.

Fase 3: Approfondimento del documento di progettazione (75 min)

Un panel di due — il responsabile dell'assunzione e uno staff o principal engineer — lavora attraverso il documento con il candidato. Il candidato non presenta; il panel legge il documento in anticipo e il tempo è speso in follow-up. Il formato:

  • Primi 15 minuti: le alternative. "Hai escluso un approccio step-functions. Perché? Cosa cambierebbe se il nostro budget di latenza fosse 50 ms invece di 5 s?"
  • Prossimi 30 minuti: le modalità di fallimento. Esaminate come il sistema si rompe in tre condizioni specifiche che voi fornite. Osservate come il candidato aggiorna il suo design in tempo reale.
  • Ultimi 30 minuti: la migrazione. "Abbiamo 47 Lambda esistenti che devono migrare a questo. Percorri i primi 90 giorni."

Questa fase testa le dimensioni 1 e 2 insieme: il candidato ha identificato il problema giusto, ed è il suo design effettivamente difendibile quando i vincoli cambiano?

Fase 4: Round di coding (60 min)

Ancora richiesto, anche per lo staff. Due motivi: uno staff engineer che non riesce a scrivere codice per niente è raro e cattivo, e il round vi dice se riescono comunque a fare pair programming con ingegneri senior sul lavoro che effettivamente devono fare.

Saltate LeetCode. Usate un round di debugging o refactoring su codice realistico — 200–400 linee, un bug non banale, una richiesta esplicita di lasciare il codebase in migliore condizione di come l'hanno trovato. Valutate secondo la rubrica di coding che usate per candidati senior, ma pesate il pensiero diagnostico e la qualità della code review più in alto della velocità.

Un candidato staff che fluentemente identifica il bug, nomina altri due problemi che non risolverà, e spiega il refactoring sicuro più piccolo sta facendo esattamente quello che il lavoro richiede. Uno che supera un candidato senior in velocità non lo è.

Fase 5: Intervista di influenza tra team (60 min)

Questo è il round che la maggior parte dei cicli per staff non esegue, ed è quello che più affidabilmente cattura il falso positivo — l'ingegnere senior che risolve i problemi brillantemente ma non può muovere un gruppo di team.

Un intervista comportamentale strutturata, quattro prompt in profondità, ognuno che esamina un diverso meccanismo:

  1. "Parlami di una posizione tecnica che hai tenuto che era impopolare con il team. Cosa ha cambiato la tua mente, o cosa ha cambiato la loro?"
  2. "Descrivi un momento in cui hai fermato un progetto che non avrebbe dovuto essere spedito. Come l'hai fatto senza perdere la fiducia delle persone che ci lavoravano?"
  3. "Percorri l'ultimo documento tecnico che hai scritto che un altro team ha adottato come base per il loro lavoro."
  4. "Parlami di un momento in cui hai fatto mentoring a un ingegnere fuori dalla tua catena di reporting su qualcosa in cui erano migliori di te un anno dopo. Cosa hai fatto?"

Le risposte del candidato dovrebbero nominare persone, documenti, riunioni e risultati. Risposte vaghe — "abbiamo allineato, abbiamo costruito consenso, abbiamo spedito" — falliscono questo round. Il lavoro è ricco di meccanismi; anche l'intervista dovrebbe esserlo.

Fase 6: Bar raiser (45 min)

Uno staff o principal engineer da fuori dal team, valutando il candidato rispetto allo standard staff della compagnia, non al bisogno del team. La loro domanda per se stessi alla fine: "Vorrei lavorare con questa persona su un problema che mi interessa?"

Tenete un debrief lo stesso giorno con scorecard bloccate — il formato conta più a livello staff perché i disaccordi riguardano portata e giudizio, non se qualcuno riesce a codificare, e questi sono esattamente i disaccordi che vengono dissolti da un intervistatore carismatico nella stanza.

Cosa lasciare fuori

Alcune cose che il ciclo per staff non dovrebbe includere, e i motivi per cui ognuna è una trappola:

  • Due round di coding. Uno è sufficiente. Un secondo non vi dice nulla di nuovo e segnala al candidato che non sapete cosa state assumendo.
  • Un round di system design che è solo "progetta Twitter". I prompt generici testano la memorizzazione. Usate un problema dal vostro dominio effettivo così il candidato deve effettivamente pensare.
  • Un intervista "principi di leadership" che è il round comportamentale con un nome diverso. Se già eseguite un round comportamentale strutturato, incorporarlo in un round cross-team ben progettato è più forte che eseguirne due sottili.
  • Un round di presentazione, a meno che presentare non sia parte del lavoro. Chiedere al candidato di presentare 30 minuti di lavoro passato va bene se il ruolo richiede presentazioni pubbliche agli ingegneri. Altrimenti testa l'abilità sbagliata.

Calibrare gli intervistatori allo standard staff

La parte più difficile di eseguire un ciclo per staff non è il design del round — è assicurarsi che gli intervistatori sappiano cosa stanno valutando. Tre passi concreti:

  1. Scrivete guide di valutazione ancorata per ogni dimensione. Un 3 su 4 su "qualità delle decisioni architettoniche" dovrebbe significare una cosa specifica — ad esempio, "identifica il compromesso del load balancing senza sollecitazione e spiega il costo di sbagliarlo". Un 4 dovrebbe significare "solleva un vincolo che il prompt non contiene e riformula il problema". Questo è lo stesso scorecardiscipline che funziona a livello senior, con ancoraggi diversi.
  2. Eseguite due practice debrief prima del primo vero. Prendete due offerte staff recenti (una accettata, una declinata) e fate gli intervistatori del ciclo valutarle alla cieca, poi fate il debrief. Il punto è far emergere dove il panel non è d'accordo su cosa significhi staff, prima che un candidato vero sia in linea. Questo è esattamente il calibration che la maggior parte dei team salta e più tardi rimpiange di aver saltato.
  3. Tracciate il downlevel rate. Se il vostro ciclo produce un'offerta staff il 30% delle volte e un'offerta senior il 50% delle volte per candidati che si sono candidati per staff, il vostro screening del responsabile dell'assunzione sta lasciando passare troppi candidati senior. Se produce un no-hire il 60% delle volte, la vostra fonte di inbound è sbagliata. In entrambi i casi, la metrica vi dice dove risolverla.

Cosa fare dopo

Se state impostando o risolvendo un ciclo di colloqui per ingegnere staff:

  1. Scrivete la rubrica a quattro dimensioni questa settimana. Anche una v1 con ancoraggi approssimativi batte nessuna rubrica per niente.
  2. Aggiungete il documento di progettazione scritto se non lo avete già. È il round con il segnale più elevato e il più economico da introdurre.
  3. Sostituire uno dei vostri round di coding con un'intervista di influenza tra team. Lo scambio vale quasi sempre la pena.
  4. Eseguite due debrief di calibrazione su candidati passati prima del prossimo ciclo dal vivo.
  5. Controllate retrospettivamente le ultime tre assunzioni di staff rispetto alla rubrica. Se due di loro ottengono un punteggio basso su una dimensione che non avete testato, quello è il round che vi manca.

L'assunzione di staff non è l'assunzione di senior con un system design più lungo. È una rubrica diversa, un ciclo diverso, e un debrief diverso. I team che lo capiscono assumono ingegneri staff che effettivamente fanno il lavoro. Quelli che non lo fanno assumono ingegneri senior con un titolo diverso e si chiedono perché il loro debito architettonico continua a crescere.

ingegnere staffciclo di colloquisystem designleadership tecnicaassunzione di talenti

Articoli correlati