Wie effektiv sind Programmierherausforderungen im Rekrutierungsprozess? [geschlossen]

14

Ich denke, unser Unternehmen kann Herausforderungen schaffen, um Kandidaten für Softwareentwickler zu finden, die:

  • Gut darin, Probleme zu lösen, nicht darum, Personalvermittler zu überzeugen.
  • Eher Angst haben, auf einer Karrieremesse zu uns zu kommen.
  • Wahrscheinlicher, dass sie in ihrem aktuellen Programmierjob nicht ausgelastet sind, aber zu introvertiert, um etwas dagegen zu unternehmen.

Ein Beispiel finden Sie in diesem Artikel , in dem beschrieben wird , wie Facebook mithilfe von Piet eine E-Mail-Adresse in einem Bild versteckt .

Ich kann einfach keine Studien oder harten Daten darüber finden, ob dies tatsächlich funktioniert oder nicht.

JoeB
quelle
Ich stimme dir nicht zu. Es ist nicht ungewöhnlich, auf SE-Websites zweizeilige Titel zu haben, und dieser spezifische Titel ist so wie er ist sehr klar. Wenn Sie es kürzen, wird es möglicherweise verwirrender.
Arseni Mourzenko
1
Ich kann mir keine ernsthafte Studie vorstellen. Wie entscheiden Sie, ob diejenigen, die nach einer solchen Herausforderung eingestellt werden, besser sind als diejenigen, die sonst eingestellt worden wären, oder umgekehrt? Programmierer unterscheiden sich, ihre Ausbildung ändert sich im Laufe der Jahrzehnte stark, der Personalbeschaffer ändert sich, die Herausforderungen ändern sich, ein brauchbares Bewertungssystem ist kaum vorstellbar.
Benutzer unbekannt
1
Hallo Joe, Studienanfragen haben hier eher schlechte Ergebnisse: Unser Fachwissen steckt nicht in der Informationsbeschaffung. Wenn dies so formuliert würde: "Wie effektiv sind Programmierherausforderungen im Rekrutierungsprozess?", Würde dies wahrscheinlich viel besser funktionieren.
1
@mattnz: Ich verstehe nicht, woher deine Schlussfolgerung kommt. Sie können mit Mäusen Tierversuche mit Tabakrauch durchführen. Sie können die Reaktionsgeschwindigkeit in einem Simulator messen, nachdem Menschen etwas Alkohol getrunken haben. Wie können wir diese Methoden auf die Einstellung von Programmierern übertragen?
Benutzer unbekannt
3
@mattnz, Anzahl der Todesfälle pro 10.000 Personen über einen bestimmten Zeitraum, sei es aufgrund von Lungenkrebs oder Verkehrsunfällen, ist eine (mehr oder weniger) objektiv messbare Größe. Die Güte eines Entwicklers oder der Erfolg eines SW-Projekts sind nicht einmal genau definierte Begriffe.
Péter Török

Antworten:

7

Wie jedes Werkzeug können sie äußerst hilfreich oder äußerst gefährlich sein. Eine Bohrmaschine macht Ihnen das Leben so viel leichter - bis Sie Ihre Hand durchbohren und in der Notaufnahme landen. Gleiches gilt für die Programmierherausforderungen bei der Personalbeschaffung.

Das Gute : Dies ist möglicherweise eine effektive Methode, um jemanden zu erkennen, der auf dem Papier als Programmierer möglicherweise nicht so überzeugend ist. Derjenige mit einem Abschluss in etwas, das sehr wenig mit dem zu tun hat, was die Leute normalerweise als "Programmieren" betrachten - Biologie, Politikwissenschaft, Kunstgeschichte ...

Wenn sie Ihre Herausforderungen meistern, dann großartig. Sie haben das Programmieren irgendwie gelernt und es steckt anscheinend fest. Wenn sie festsitzen, ist ihre Bewerbung möglicherweise nur etwas, das durch die Personalabteilung gerutscht ist.

Das Schlechte : Eine schlecht geschriebene Programmierherausforderung bewertet die Programmierfähigkeiten nicht wirklich . Es testet das Lösen von Rätseln mittels Programmierkenntnissen . Das Problem ist, dass es sich bei der zweiten Frage um eine Frage mit zwei Variablen handelt - sind Sie gut im Lösen von Rätseln und können Sie das genannte Lösen von Rätseln über Code durchführen? Es ist möglich, einen perfekt talentierten Programmierer zu haben, der beim Lösen von Rätseln völlig versagt.

Die meisten Programmierprobleme, die ich gesehen habe, scheitern auch daran, Personen zu erkennen, die dem nahe stehen , was Sie wollen, je nachdem, wie es geschrieben wurde.


Es gibt Möglichkeiten, beide zu mildern. Für letztere würde ich in Betracht ziehen, "Teilkredite" in Form von Lösungen zu akzeptieren, die sich nicht wirklich anbieten. "So würde ich das lösen ..." usw., wenn Sie wirklich nach Problemen suchen Löser. Immerhin codieren nur sehr wenige Menschen ganz alleine, und wenn ihre Antwort richtig gewesen wäre, wenn sie einen älteren Kollegen fragen könnten: "Hey Jim, kennen Sie eine gute Möglichkeit, X zu implementieren?" dein Team.

Ersteres ist etwas schwieriger, denn die Last dafür liegt bei Ihnen. Wähle Rätsel / Probleme / Herausforderungen, die wichtig sind. Wenn noch nie jemand in Ihrer Gruppe auf etwas gestoßen ist, das dem Problem des Handlungsreisenden in seiner Arbeit auch nur annähernd ähnelt, sollten Sie Travelling Salesman nicht zu einer cleveren Herausforderung machen. Auf diese Weise versagen sie, wenn sie den Problemlösungsaspekt von "Lösen Sie das Problem und kodieren Sie es" nicht beherrschen, zumindest bei etwas, das tatsächlich auftaucht, anstatt bei einem willkürlichen Schachzug, den Ihr Team während des Mittagessens ausspuckte.

Fomite
quelle
+1. Das Erstellen einer guten Programmierherausforderung ist eine echte Herausforderung für den Personalvermittler.
Simon Bergot
6

Sehr effektiv.

... solange Ihr Rekrutierungsprozess nicht nur mit Programmierproblemen verbunden ist. Ich ärgere mich und hasse es, die technische Bewertung eines Interviews vorzunehmen, aber es ist ein einfaches Maß, um Idioten herauszufiltern. Das Herausfiltern von Idioten ist der Kern des Rekrutierungsprozesses, damit Sie mehr Zeit für diejenigen aufwenden können, die für die Rolle geeignet sind .

Ich halte es beim Interview für sehr wichtig zu sehen, was die Leute unter Druck sagen. Wenn sie dazu neigen, einen Haufen eklatanten Mist auszuspucken, ist das leicht zu erkennen, und ich werde wissen, dass diese Person meine Zeit nicht wert ist.

Eher Angst haben, auf einer Karrieremesse zu uns zu kommen.

Das ist keine schlechte Sache. Wenn Ihr potenzieller Kandidat nicht bereit ist zu wetten, dass er es wert ist, dort angestellt zu werden, möchten Sie ihn dann wirklich einstellen?

JK
quelle
1
Es kann andere Gründe geben, warum jemand Angst davor hat, auf sie zuzukommen ... Zum Beispiel fällt es manchen Menschen schwer, zu versuchen, sich selbst zu verkaufen oder sogar nur zu präsentieren. Gefühle stören. Das bedeutet nicht, dass sie nicht brillant und / oder wertvoll wären, wenn sie diese anfängliche Kontaktaufnahme hinter sich haben.
Am
0

Ich gehe davon aus, dass Sie möchten, dass jemand Teil eines Teams ist - als solcher ist der bessere Programmierer die Person, die besser mit den vorhandenen Teammitgliedern zusammenarbeitet. Sie möchten eine Gruppe von Menschen zusammenbringen, die effektiv miteinander kommunizieren können, die tatsächlich gut miteinander auskommen (sie müssen keine Freunde sein, aber sie brauchen ein gutes Verhältnis und Respekt), die bereit sind zuzustimmen und Verwenden Sie gemeinsame Entwicklungsstandards (Code und Prozess), die bereit sind, ihren Hochschulen zu helfen, wenn sie sich mit einem neuen Problem befassen oder eine mentale Blockade haben (Vier-Augen-Theorie). Sie müssen auch eine Mischung aus Persönlichkeitstypen finden. Wenn Sie also ein Team von Introvertierten haben, die selten sprechen, kann es durchaus hilfreich sein, ein gesprächigeres Teammitglied hinzuzuziehen, um die Teamdynamik zu verbessern, wodurch das Team produktiver wird. Auf der anderen Seite,

Nachdem Sie eine Person dazu gebracht haben, in diese Mischung zu passen, sollten Sie die technischen Fähigkeiten / Fertigkeiten berücksichtigen. Auch diese müssen sich ergänzen. Jeder hat andere Bereiche, in denen er stark ist, andere sind in Ordnung und einige haben keine Ahnung. Sie müssen also einen Stärkenmix zusammenstellen, der für das jeweilige Projekt relevant ist. Denken Sie daran, dass ein fortgeschrittener Programmierer, der gut mit einem guten Programmierer zusammenarbeitet, das Niveau seiner Arbeit von der stärkeren Person erhöht bekommt. Das schwache Glied in der Kette sind Beziehungen, nicht Fähigkeiten (vorausgesetzt, die Fähigkeit ist im Team)

Viel Glück beim Zusammenstellen.

Adam f
quelle