Auf dem Blog von Stefan Macke habe ich gerade einen Beitrag mit dem Titel “Warum man Bewerber programmieren lassen sollte” gelesen und habe diesen auch kommentiert. Allerdings möchte ich hier auf meinem Blog das Thema auch noch mal aufgreifen und meine Erfahrungen schildern.
Ich teile hier ähnlich wie in dem Kommentar meine Erfahrungen. Ich sage nicht, dass es schlecht ist einen Bewerber programmieren zu lassen. Es ist meiner Meinung nach das Wie. Wie lässt man einen Bewerber eine Programmieraufgabe richtig lösen?
Meine Erfahrungen
Ich wurde mal während eines Bewerbungsgespräches gefragt wie ich ein „Bubblesort“ programmieren würde und sollte meine Ideen aufmalen. Aber was war denn überhaupt ein „Bubblesort“? Kannte ich bis dato nicht. Und nun? In meiner Ausbildung zum Fachinformatiker habe ich sowas “Grundlegendes” nicht gelernt. Und wo soll das Wissen herkommen, wenn man nicht weiß wonach man ggf. suchen muss um an das Wissen zu gelangen?
Schlussendlich hatte mir das Unternehmen sowieso nicht gefallen, einmal von den Menschen nicht und vor allem (und das war der größte Kritikpunkt) wegen des Großraumbüros. Insofern war es nicht tragisch dort nicht genommen worden zu sein.
Ein anderes Unternehmen hatte mir während des Gespräches auch eine Aufgabe gestellt. Eine Datenbankabfrage mit Joints, mit TSQL, was ich bis dato ebenfalls nicht kannte. Na gut, es ist ja fast wie MySQL. Aber ein paar Feinheiten waren doch anders. Die zwei Menschen, mit denen ich dort das Gespräch geführt habe, haben mir natürlich die ganze Zeit über die Schulter geschaut. Nicht besonders schön wenn ich ehrlich bin. Ich mag es nicht, wenn man mir beim Arbeiten bzw. programmieren über die Schulter schaut, da ich gerne immer erstmal ausprobiere.
So hat man dann seinen Anzug vollgeschwitzt und gehofft, man macht alles richtig.
Muss irgendwie nicht sein wie ich finde.
Danach kam dann noch eine Aufgabe nach Hause. Ein Programm mit Datenbank und entsprechender Datenbankabfrage (INSERT, DELETE und so weiter). Ich hatte einen Datenbankhelper programmiert und diesen als static deklariert. Da lässt sich jetzt vorzüglich drüber streiten, ob das nun gut oder schlecht ist. Aber wozu daraus ein Objekt machen? Ende vom Lied war, das sei ja nicht Objektorientiert und schlecht und bla bla bla. Komische Firma -> wollte ich eh nicht hin.
Meine Ideen
Wie oben schon angedeutet, ist es sicherlich nicht verkehrt einen BEwerber eine Programmieraufgabe zu geben, die er lösen soll. Aber ich würde es besser finden, wenn der Bewerber eine Aufgabe Zuhause machen kann – in Ruhe! Und nicht wenn da zig Leute über die Schulter schauen. Das stresst diesen nur ungemein. Ok ggf. will man auch schauen wie der Bewerber in einer Stresssituation zurecht kommt, dazu aber mehr in einem anderen Artikel.
Lasst den Bewerber ggf. Hilfe aus dem Internet oder einem Buch nachschlagen. Wie oft hat man es in seinem Berufsalltag, dass man etwas nicht kennt (Bubblesort) oder doch mal nachschlagen muss, wie etwas funktioniert? Also ich habe das öfter.
Bewerber Probearbeiten lassen
Achso und 1 Tag Probearbeiten musste ich auch schon. Wo ich mich dann frage, wie soll man das als Berufstätiger machen. Da wird man dann genötigt 1 kostbaren Tag Urlaub zu nehmen, nur für die vermeintlich neue Firma. Um später dann doch eine Absage zu erhalten? Das kann doch nicht deren Ernst sein. Damals kam ich gerade frisch aus der Ausbildung, hatte also Zeit und konnte den Probearbeitstag absolvieren.
Aber heutzutage würde ich sowas nicht machen. Meine Urlaubstage sind mir heilig und die verschwende ich nicht für so einen Probearbeitstag. An solch einem Tag erkennt man auch nicht, wie der Bewerber wirklich tickt und ob er jetzt wirklich für die nächsten 20 Jahre in das Unternehmen passt. Dafür ist schließlich die Probezeit.
Dazu kommt, dass es meiner Meinung nach genügend andere Auswahlverfahren gibt, um seinen “perfekten” neuen Mitarbeiter zu finden. Für meine Anstellungen reichten ein nettes einfaches Gespräch, wo mir etwas auf den Zahn gefühlt wurde und das war es dann auch schon.
6 August, 2016 um 13:34
Hallo Pascal,
im Großen und Ganzen stimme ich dir zu. Deine Erlebnisse würdest du bei uns im Unternehmen nämlich nicht wiederholen. Wir sitzen nicht mit mehreren Leuten hinter den Bewerbern, während sie etwas programmieren sollen, das sie nicht kennen. Wir machen ein lockeres Pair Programming zusammen und lösen einfache Aufgaben wie z.B. FizzBuzz, die man in wenigen Minuten verstehen kann und die auch keine tiefergehenden Programmierkenntnisse erfordern.
Meiner Erfahrung nach ist es so, dass viele Bewerber schon Probleme mit einfachsten Programmierkonstrukten haben. Schleifen, if-Anweisungen usw. können nicht sauber umgesetzt werden. Und das hat auch nichts mit der Prüfungssituation zu tun.
Ein anderes Mal durften unsere Bewerber ein kleines Problem für sich allein lösen und auch das Internet als Quelle nutzen. Der Code, der dabei herauskam, war schon grenzwertig. Doppelter Code und zahlreiche “Hacks” waren noch die kleinsten Probleme.
Ich bin daher der Meinung, dass man als verantwortungsbewusstes Unternehmen den “Entwicklern”, die sich bewerben, auf den Zahn fühlen und wenigstens die grundsätzliche Fähigkeit zu programmieren prüfen muss.
Viele Grüße!
Stefan
10 August, 2016 um 16:51
Hallo Stefan,
vielen Dank für deinen Beitrag. Ja dann handhabt ihr das anders als die beiden Firmen wo ich bei einem Gespräch “programmieren” musste. Pairprogramming habe ich bisher noch nicht gemacht in einem Bewerbungsgespräch.
Du bist ja nun mit Prüfer bei der IHK, was nimmst Du denn da mit, wenn du Bewerber siehst, die nicht ordentlich programmieren können? Macht ihr das in eurem Unternehmen besser? Oder woran liegt es, dass potentielle Bewerber nicht programmieren können?
Viele Grüße, Pascal