Quali sono le migliori domande su FizzBuzz per intervistare un candidato per un ruolo di sviluppatore di software? [chiuso]

4

Sto cercando qualche consiglio su intervistare candidati tecnici. L'ho toccato brevemente in una domanda che ho precedentemente chiesto: domande template in un intervista tecnica ed è stato informato che le domande di FizzBuzz sono progettate per eliminare i candidati che sicuramente non vorranno avvicinarsi al tuo codice. Passando da quello, mi piacerebbe sapere quali domande FizzBuzz funzionano meglio? Nella mia esperienza personale, quella che ho visto è "Puoi scrivere un metodo per determinare se un numero è primo o no?". Personalmente, lo trovo un po 'troppo facile (scrivere quello più efficiente è un'altra storia). Ci sono domande migliori su FizzBuzz che possono essere utilizzate? Cosa vorresti mettere a un candidato?

    
posta Desolate Planet 16.09.2011 - 15:31
fonte

3 risposte

3

Vorrei esaminare questo elenco di 100 domande e adattarlo secondo le esigenze specifiche del posto di lavoro. Vorrei suggerire di provare a colpire ogni area una volta, soprattutto se stai cercando un ingegnere a tutto tondo, ma concentrati sulle aree più rilevanti per il lavoro.

Alcuni esempi delle domande a cui sembra che tu sia più interessato. Invece di chiedere "come", chiedere esplicitamente a loro di scrivere un metodo o una routine, sia in pseudocodice (il mio metodo preferito) che nella lingua in cui sarebbero usando se sono stati assunti.

  • Come fai a sapere se un numero è un potere di 2? E come fai a sapere se si tratta di un numero dispari?
  • Come trovi l'elemento centrale in una lista collegata?
  • Come scriveresti una funzione per invertire una stringa? E puoi farlo senza una stringa temporanea?
  • In un array con numeri interi compresi tra 1 e 1.000.000, un valore si trova nell'array due volte. Scrivi un metodo per determinare quale.
risposta data 16.09.2011 - 15:39
fonte
11

Personalmente, non li metterei a nessun candidato. Lo starei seduto di fronte a un laptop in un ambiente non minaccioso e fargli incidere un progetto con te per mostrare le capacità di pensiero critico e la capacità di acquisire rapidamente nuovi strumenti / tecnologie.

Seriamente, non sono bambini. Gli enigmi della logica fanno raramente ciò che speri che facciano. Chiedere a qualcuno di scrivere un algoritmo sul posto è una cosa difficile da fare. Almeno per me, mi piace andare a risolvere un problema con il caffè e abbozzare un po 'prima di sedermi e iniziare a lavorarci. Un'impostazione di un'intervista tradizionale non genera un pensiero scorrevole.

Diavolo, portalo fuori a bere una birra e parla con il ragazzo. La cosa più importante è conoscere qualcuno quando non è nervoso e nervoso, vedi che tipo di persona sono e valuta le loro abilità in modo non minaccioso.

Se il mio attuale datore di lavoro lo facesse, probabilmente non avrei ottenuto il lavoro. In questo momento sviluppo sistemi complessi e di buon livello che richiedono capacità ben oltre quelle richieste in un'intervista, in quanto un bonus che mi accompagna molto bene con tutti in ufficio. Perché? Politiche di intervista non tradizionali. Tutti i nostri candidati entrano (dopo uno schermo telefonico) per hackerare per un giorno. Meglio ancora, pagali per un giorno.

    
risposta data 16.09.2011 - 15:40
fonte
2

Potresti porre domande relative ai paradigmi di programmazione, ad esempio, un problema che potrebbe essere risolto facilmente utilizzando la programmazione funzionale. Diciamo, progettiamo un algoritmo per calcolare un'espressione postfissa. In questo modo puoi anche vedere se il candidato sa come usare gli stack.

Ti consiglio di leggere:

  1. Come faresti a spostare il Monte Fuji?
  2. Cracking the Coding Intervista, quarta edizione: 150 domande e soluzioni per l'intervista di programmazione
  3. Algoritmi per interviste
risposta data 16.09.2011 - 15:40
fonte

Leggi altre domande sui tag