In gewisser Weise suchen Sie nach einer Möglichkeit, um zu überprüfen, ob der Befragte eine Art Turing-Test besteht. Selbst wenn der Befragte beispielsweise Ihr Büro persönlich besucht, könnte er oder sie einen subkutanen Funksender in seinem Gehörgang haben, der an Watson bei IBM angeschlossen ist. Planen Sie, für alle Kandidaten, die Sie besuchen, nach subkutanen Ohrsendern zu suchen? Nein, da die Wahrscheinlichkeit eines solchen Betrugs gering ist und die Kosten für den Betrüger hoch genug sind, dass sich nur wenige Betrüger darum kümmern würden.
Ziel ist es also, den Test so auszurichten, dass Betrug vorliegt teuer, und so ist das Signal, das Sie vom Kandidaten erhalten, schwer zu fälschen. Nichts ist jemals perfekt betrugsfest, daher müssen Sie entscheiden, wie teuer Sie die Bewertung durchführen möchten. Ein Test, der lächerlich aufwändig ist, wird potenziell gute Kandidaten vertreiben, die nicht die Zeit haben, sich in ihrem bereits geschäftigen Leben mit komplizierten Tests zu beschäftigen. Ein zu einfacher Test wird von vielen Leuten viele gute Beiträge erhalten, was es schwierig macht, Schafe und Ziegen zu trennen.
Im Bereich der Programmierung einige Tipps, die ich beim Erstellen und Durchführen von Programmiertests verwendet habe:
- Machen Sie den Test weniger über Trivia als vielmehr über Kreativität / Einfallsreichtum. Zum Beispiel fordere ich Leute nie explizit auf, Unit-Tests mit ihren Codebeispielen einzureichen, aber ich bestrafe sie schwer, wenn sie das nicht einfach alleine machen. Wenn sie die Initiative ergreifen, um etwas Gutes zu machen, anstatt etwas, das die Anforderungen des Tests nur minimal erfüllt, ist es weniger wahrscheinlich, dass sie betrügen (da Betrug jemand anderen Zeit kostet, gehen sie weniger wahrscheinlich die Extrameile) / li>
- Machen Sie die Frage sehr offen, erlauben Sie dem Kandidaten, Google oder andere Personen zu verwenden, aber fragen Sie nach einer Erklärung für ihren Ansatz. Bis der "Betrüger" alles über den Betrugsansatz erklärt hat, sollte der Kandidat tatsächlich davon wissen, gut genug, um einen Bericht zu schreiben. Auch hier wird es teuer sein, wenn sich jemand anderes viel Zeit nimmt, um ein Problem kreativ zu lösen und das zu schreiben, es sei denn, der Betrüger hat Zugriff auf eine magische Orakelperson ohne persönliche Zeitbeschränkungen Schreiben.
- Verwenden Sie Tools wie Collabedit oder Google Docs, damit der Kandidat ein Problem in Echtzeit mit einem Ihrer Programmierer löst. Stellen Sie während des Interviews sicher, dass Sie sehr spezifische Fragen stellen, und suchen Sie nach schnellen Antworten. Wenn der Programmierer das Problem gut lösen kann, sollte er in der Lage sein, sich auf die Programmierung zu konzentrieren, verwandte Nebenfragen schnell zu beantworten und sich dann erneut auf die Programmierung zu konzentrieren. Wenn sie jedes Mal längere Pausen benötigen, um routinemäßige Nebenfragen zu beantworten, wenden sie sich wahrscheinlich an einen anderen, um Hilfe zu erhalten.
- Lassen Sie den Kandidaten mehrere Filter durchlaufen. Stellen Sie eine Vielzahl von Fragen mit unterschiedlichen Schwierigkeitsgraden. Schließlich besteht ein großer Teil des technischen Interviews darin, die technischen Fähigkeiten eines Kandidaten herauszufinden. Niemand weiß alles und Sie müssen wissen, wo die Grenzen, Risse und Bereiche mit geringer Eignung liegen. Wenn Sie einen Telefonbildschirm mit 5 Fragen von leicht bis schwer angeben, dokumentieren Sie sowohl die Antworten des Kandidaten als auch die Geschwindigkeit, mit der er antwortet. Geben Sie dann einen anderen Telefonbildschirm, der ähnlich ist, und möglicherweise einen dritten. Es wird für einen betrügerischen Kandidaten schwierig sein, dafür zu sorgen, dass immer derselbe Assistent da ist, und wenn Sie bei bestimmten Arten von Fragen offensichtliche Unstimmigkeiten in der Eignung feststellen, kann dies eine rote Fahne sein.
- Bitten Sie um eine zertifizierte Probe anstelle der Antwort auf einen Test. Bitten Sie den Kandidaten, ein Codebeispiel aus einem College-Kurs, einem Open-Source-Projekt usw. einzureichen und nach dem Namen einer Referenz zu fragen (kein Student, sondern ein Fakultätsmitglied, ein Lehrer, ein Lehrassistent, ein Projektleiter). Wer kann dafür bürgen, dass der Kandidat den Code geschrieben hat? Bitten Sie dann den Kandidaten, seine Codierungsoptionen für dieses Problem / Projekt zu erläutern.
ol> Die Grundidee hier ist, dass (1) Betrug teuer wird und (2) ein Kompromiss für die Kosten gefunden wird von (1) so, dass gute Nicht-Betrüger nicht durch die Eintrittsbarriere in Ihrem Unternehmen abgeschreckt werden.
Ich möchte auch hinzufügen, dass ich in meiner jahrelangen Erfahrung mit dem Entwerfen und Durchführen von Programmiertests in meinem derzeitigen Unternehmen Betrug ist die geringste meiner Sorgen. Nur wenige Kandidaten können grundlegende Anweisungen befolgen. Geben Sie beispielsweise eine einfache Anweisung ein, z. B.: "Sie dürfen keine integrierten Funktionen zur Manipulation von Zeichenfolgen verwenden, um dieses Problem zu lösen." Nach meiner Erfahrung verwenden mehr als 50% der Kandidaten immer noch integrierte Funktionen, ohne sich zu entschuldigen, und haben keine Antwort, wenn sie gefragt werden, warum sie dies getan haben.
Wenn Sie nur a verwenden Bei wenigen dieser Bildschirme wird ein großer Prozentsatz von Betrug, Faulheit und Geräuschen mit geringer Eignung besiegt. Dann sind die wenigen äußerst fleißigen Betrüger, die es schaffen, weniger Zeitverschwendung für Ihr Unternehmen.
Sie können auch versuchen, den Kandidaten mitzuteilen, dass sie möglicherweise Hilfe von einem Freund erhalten, aber nur, wenn sie Ihnen die Namen aller Personen mitteilen, die ihnen geholfen haben. Wenn der Kandidat nicht wie der echte Artikel im persönlichen Interview erscheint, können Sie vielleicht seinen Freund anrufen, der ihm beim Betrügen geholfen hat und im Codierungstest die bessere Antwort gegeben hat?