7 suggerimenti per navigare in una sessione di programmazione in coppia durante un colloquio di lavoro

Nodo di origine: 882824

È una conversazione, non un quiz, e i candidati dovrebbero cercare opportunità per mettere in mostra capacità di programmazione e comunicazione.

gli sviluppatori di software accoppiano la programmazione

Immagine: GettyImages/San Francisco Chronicle/Hearst Newspapers

Il lavoro di squadra e la collaborazione sono più importanti che mai poiché il lavoro da remoto si evolve in lavoro ibrido. Le aziende sono alla ricerca di modi per assumere sviluppatori con forti capacità di codifica e comunicazione. Coppia di programmazione è un modo per testarli entrambi.  

Contenuto dello sviluppatore da leggere

Se il processo di colloquio include una sessione di lavoro con un dipendente esistente, è fondamentale comprendere le cose da fare e da non fare. I datori di lavoro vogliono vedere come un candidato si inserirà nel team oltre a misurare una varietà di competenze.

Jonathan Fernández, consulente senior sviluppatore presso ThoughtWorks, ha affermato che l'obiettivo della programmazione in coppia riguarda un dipendente e un candidato che lavorano insieme per risolvere un problema, non il candidato che risolve il problema.

"Fraintendere questo punto può portare il candidato a prendere importanti decisioni progettuali senza avere prima un discorso costruttivo sull’argomento, o addirittura introdurre ulteriore complessità nell’esercizio solo per mostrare conoscenza su una caratteristica specifica della lingua”, ha affermato. 

Sachin Gupta, CEO di HackerEarth, ha affermato che i datori di lavoro misurano queste capacità durante una sessione di programmazione in coppia:

  • Capacità di problem solving: la persona è stata in grado di comprendere il problema, scomporlo in sottoproblemi e quindi trovare soluzioni?
  • Qualità della codifica: la persona ha scritto codice pulito e di facile comprensione?
  • Correttezza del codice: il codice copriva tutti gli scenari comuni?
  • Abilità comunicative: la persona stava per eseguire il debug di diversi scenari, parlare della complessità del codice come proxy per scrivere codice ottimale, sottoporre a stress test e ottimizzare il codice?
  • Attitudine all'apprendimento: la persona sembra disposta e capace di apprendere sul lavoro?

"Alcuni dei processi di intervista più progressisti hanno queste competenze come una rubrica e ogni intervistatore valuta ciascuna competenza e dà una valutazione, che usano per determinare il complesso: rifiuto, accettazione debole o accettazione forte", ha affermato.

VEDERE: 13 siti di lavoro tecnologici semplificano la ricerca di un nuovo lavoro, che tu voglia lavorare da casa o meno (TechRepublic)

Fernández ha affermato che le sessioni di programmazione in coppia hanno lo scopo di illustrare le capacità comunicative di una persona in generale.

"Porre le domande giuste sui casi limite, essere in grado di spiegare i compromessi di un progetto rispetto a un altro o utilizzare semplici esempi per illustrare concetti complessi sono buoni indicatori", ha affermato Fernández. 

Ecco quattro cose da fare e tre da non fare per navigare nella programmazione della coppia.

Come fare una buona impressione

I datori di lavoro misurano le competenze tecniche e le competenze trasversali durante le sessioni di programmazione in coppia. I candidati prescelti saranno in grado di mostrare capacità complessive di programmazione e capacità di lavorare in gruppo. 

  1. Spiega il processo di pensiero dietro le tue decisioni.
  2. Tieni a mente la leggibilità, la manutenibilità e l'estensibilità.
  3. Accetta con garbo le critiche costruttive.
  4. Dimostra che puoi imparare e far parte di una squadra.

Fernández ha scritto in un recente post sul blog che gli sviluppatori dovrebbero pensare a come illustrare le proprie capacità di leggibilità, manutenibilità ed estensibilità durante l'intervista.

"Sebbene non adottiamo misure specifiche durante la sessione di abbinamento, ci aspettiamo che il candidato applichi modelli di sviluppo ben noti (SOLID, YAGNI, KISS, ecc.) e buone pratiche (sviluppo basato sui test) per raggiungere questo obiettivo, e noi Mi piace anche parlare di quando e perché dovresti applicarli durante la codifica", ha affermato.

Un altro elemento importante del processo è gestire insieme la fase di scrittura del codice ed essere in grado di accettare critiche costruttive e offrirle durante la stessa conversazione. I candidati al lavoro dovrebbero essere in grado di accettare le critiche al codice senza prendersela sul personale e sentirsi a proprio agio nel porre domande difficili durante una sessione di programmazione in coppia, ha detto Fernández. 

“Respingere una soluzione con empatia e con un ragionamento logico prima dell’implementazione porterà a una discussione che potrebbe far risparmiare molto tempo e aiuterà a garantire che la coppia comprenda appieno le implicazioni del cambiamento”, ha affermato. 

Le aziende sono anche alla ricerca di sviluppatori che possano tenere a mente più utenti, a seconda dell'attività da svolgere. 

“A volte bisogna mettersi nei panni dell’utente finale, a volte bisogna pensare come chi paga l’infrastruttura o come chi si prende cura della sicurezza della piattaforma”, ha detto Fernández. "Farlo, mentre stai accoppiando, e spiegare alla tua coppia che tipo di cappello indossi in un momento specifico, è davvero un'ottima abilità."

Non commettere questi errori 

Oltre a cercare competenze specifiche, i datori di lavoro prestano attenzione anche ai segnali di allarme che indicano che un individuo non sarebbe adatto al team. Fernández ha affermato che i segnali di allarme potrebbero essere tecnici, come la mancanza di capacità di testing o il disallineamento dei valori di un candidato riguardo alla cultura del lavoro, come non dare un valore abbastanza forte alla diversità sul posto di lavoro. 

L'elenco degli errori è simile al seguente:

  1. Non saltare direttamente alla risposta giusta: mostra il tuo lavoro.
  2. Non aver paura di fare domande.
  3. Non esagerare le tue abilità.

Gupta ha affermato che i datori di lavoro vigilano su qualsiasi tipo di falsa dichiarazione, come ad esempio persone che affermano di aver fatto qualcosa ma non sono in grado di comprovarlo con prove di lavoro.

“La rigidità del pensiero è un'altra; questo in genere dimostra che potrebbero non essere aperti a imparare dai propri errori”, ha affermato.

Gupta ha anche affermato che i candidati dovrebbero impegnarsi a porre domande all'intervistatore.

“Le persone sono riluttanti a porre domande chiarificatrici, sulle condizioni al contorno o sui casi limite”, ha affermato. "Di conseguenza, forniscono una risposta basata sulle loro ipotesi, che potrebbero differire da quelle dell'intervistatore." 

Gupta ha inoltre consigliato di adottare un approccio iterativo al problema, invece di identificare la soluzione ottimale al primo colpo.

 "Un intervistatore si aspetta che il candidato mostri come si sta avvicinando al problema, come lo sta riflettendo e come è arrivato alla soluzione, e non solo se conosce la soluzione", ha detto.

Vedi anche

Fonte: https://www.techrepublic.com/article/7-tips-for-navigating-a-pair-programming-session-during-a-job-interview/#ftag=RSS56d97e7

Timestamp:

Di più da Sviluppatore su TechRepublic