Das Screening von Softwareentwicklern auf allen Ebenen, bevor sie eine Stelle erhalten, ist so typisch wie in jeder anderen Branche. Ob an einem Whiteboard, bei der Entschlüsselung einer Zeitaufgabe oder bei der Umsetzung eines Projekts zum Mitnehmen – viele ältere Entwickler und Ingenieure fragen sich, ob Programmierübungen noch etwas sind, an dem sie teilnehmen sollten. Ein verständlicher Gedanke, wenn Sie ein erfahrener Techniker sind. Müssen Sie, ein fünfzehnjähriger Veteran mit umfassender Technologieerfahrung, immer noch Ihre Fähigkeiten in Programmieraufgaben unter Beweis stellen? Andererseits, sollte ein Unternehmen Sie in Betracht ziehen, wenn Sie einen Codierungstest ablehnen?
Ehrlich gesagt, gibt es auf diese Frage keine absolute Antwort – sie hängt auch von der Unternehmenspolitik ab. Wenn Sie einen Teil des Vorstellungsgesprächs vermasseln, wird das Unternehmen den gesamten Prozess aufgeben. Nehmen wir an, Sie wären der Personalverantwortliche. Würden Sie jemanden einstellen, der gegen die Richtlinien des Unternehmens für den Bewerbungsprozess verstößt?
Die Ablehnung von Kodierungstests während des Vorstellungsgesprächs wird definitiv zu einer Ablehnung durch einen potenziellen Arbeitgeber führen. Einem potenziellen Arbeitgeber zeigen Sie mit Ihrer Ablehnung eines Codierungstests, dass Sie eine Herausforderung darstellen, selbst wenn es sich um etwas ziemlich Standardmäßiges handelt. Abgesehen von Ihren umfangreichen technischen Kenntnissen stellen Unternehmen Personen ein, die in ihre Kultur passen. Wenn Sie also einen Test während eines Vorstellungsgesprächs ablehnen, zeigt das dem Arbeitgeber, dass Sie möglicherweise nicht in die Unternehmenskultur passen, noch bevor Sie den Vertrag erhalten.
Für den Fall, dass Ihnen eine Übung auf einem Whiteboard angeboten wird. Wenn Sie sich dabei nicht wohl fühlen, können Sie mit dem Personalverantwortlichen sprechen und zumindest um einen Codierungstest oder eine Arbeit zum Mitnehmen bitten, anstatt zu behaupten: „Das mache ich nicht. Die meisten Manager werden Ihr Gegenangebot wahrscheinlich akzeptieren. Sie können dem Personalverantwortlichen sagen: „Ich bin mir nicht sicher, ob ein Whiteboard die beste Methode ist, um meine Kenntnisse und Fähigkeiten zu demonstrieren. Sagen Sie ihm, dass Sie die Gründe für die Whiteboards durchaus verstehen. Dennoch fühlen Sie sich bei einem kleinen Projekt wohler, bei dem Sie die Tools aller Entwickler, das Internet und die Dokumentation nutzen können. Auch ein Live-Test ist ein guter Kompromiss. Er hinterlässt keinen schlechten Nachgeschmack am Whiteboard. Dennoch hilft er Ihrem potenziellen Arbeitgeber zu erkennen, ob Sie über die erforderlichen Schlüsselkompetenzen und Fähigkeiten verfügen. Technische Hausaufgaben sind etwas bequemer, haben aber ihre Eigenheiten.
Warum Senior Software-Entwickler keine Coding-Tests machen
Das Hauptziel von Codierungstests bei Vorstellungsgesprächen besteht darin, Bewerber, die nicht über das erforderliche technische Know-how und die Fähigkeiten für die Stelle verfügen, frühzeitig herauszufiltern. So verschwenden die Personalverantwortlichen und die Kandidaten ihre Zeit nicht mit einem persönlichen Gespräch.
Doch fast alle Entwickler werfen heute einen bösen Blick auf die Idee, einen Codierungstest durchzuführen, und über fünfzig Prozent der Menschen weigern sich, den Status quo zu bewerten. Hier sind die Gründe, warum Softwareentwickler Interviews mit Codierungstests hassen.
Coding-Tests prüfen die algorithmischen Fähigkeiten und nicht die Fähigkeit, Code zu schreiben.
Unternehmen brauchen immer Ergebnisse aus diesen Bewertungen, und zwar nicht nur Ergebnisse, sondern aussagekräftige Ergebnisse. Der einfachste Weg, dies zu erreichen, ist die Verwendung von Trickfragen bei den Bewertungen. Um bei diesen Tests erfolgreich zu sein, müssen die Bewerber mindestens ein paar Wochen lang üben, wie man Code für einige der problematischen Fragen schreibt. In der Regel können einige wenige Entwickler bei diesen Tests hervorragende Ergebnisse erzielen. In der Regel vergessen die Interviewer, wie anspruchsvoll Interviews für die Befragten sein können. Das Schreiben von ausführbarem Code für einen Nischenalgorithmus, der Ihnen in der Schule begegnet ist. den Sie als Ingenieur noch nie benutzt haben, mit einem Zeitlimit zu versehen, kann äußerst erschreckend sein.
So wichtig es auch ist, dass ein Entwickler gut mit Algorithmen umgehen kann, so ist dies doch kein sicheres Maß dafür, wie gut ein Entwickler ist oder ob er für die Stelle geeignet ist. Nur sehr wenige Aufgaben im technischen Bereich erfordern eine solide algorithmische Fähigkeit. Sie können sich daher vorstellen, dass kein großer Entwickler von der Idee begeistert ist, überhaupt einen Test abzulegen. Hinzu kommt, dass die Fragen irrelevant sind und 50 % der Bewerber sich weigern, an diesen Tests teilzunehmen.
Codierungstests spiegeln nicht die reale Programmiererfahrung wider.
Softwareentwickler führen an, dass Kodierungstests nicht die tatsächliche Erfahrung beim Schreiben von Code zeigen, wie man sie bei der Arbeit machen würde. Zum Beispiel verlangen die meisten Tests, dass die Entwickler etwas von Grund auf neu erstellen. Da es einfach ist, bei Null anzufangen, ist es ungewöhnlich, dass Ingenieure dies bei der Einstellung sehr oft tun – was in der realen Welt eher die Regel als die Ausnahme ist. Bei der Berufserfahrung müssen Sie sich stattdessen mit einer bestehenden Codebasis vertraut machen und effektiv zu ihr beitragen.
Codierungstests bringen Entwickler aus ihrer Komfortzone heraus.
Viele Entwickler stellen die Sinnhaftigkeit der Codierung von Tests in Frage, weil sie eine Aufgabe in einer Umgebung ausführen sollen, die ihnen nicht vertraut ist. Daher sind sie der Meinung, dass sie sich nicht von ihrer besten Seite zeigen können. Fast alle Entwickler verfügen über eine integrierte Entwicklungsumgebung (IDE), die ganz auf ihren persönlichen Geschmack und ihre Vorlieben zugeschnitten ist und es ihnen ermöglicht, effizient Code zu schreiben. Es stellt sich also die Frage, wie diese Entwickler ihr Bestes geben sollen, wenn sie in eine Umgebung gesteckt werden, mit der sie nicht vertraut sind und die sie nicht einmal nutzen werden, wenn sie für den potenziellen Mitarbeiter arbeiten dürfen. Außerdem kann es vorkommen, dass Entwickler gebeten werden, eine Aufgabe an Ort und Stelle auszuführen, während andere zuschauen. Dies erhöht in der Regel die Angst der Entwickler. Dadurch wird es ihnen unangenehm, diese Aufgabe auszuführen.
Die Codierung von Tests ist in der Regel zeitaufwändig.
Ein weiterer Grund, warum Codierungstests bei Vorstellungsgesprächen für Softwareentwickler einen furchtbaren Beigeschmack haben, ist, dass sie zeitaufwändig sind. Seien Sie daher vorsichtig, wenn ein Unternehmen Sie bittet, einen Test auf seiner Plattform oder Umgebung durchzuführen. Werden Sie gebeten, einen Fehler zu beheben oder eine Funktion für einen bestehenden Dienst oder eine Anwendung zu entwickeln? Wenn sich der Test nicht auf eine Anwendung bezieht, ist diese bereits in Betrieb. Achten Sie bei technischen Schwierigkeiten, die Sie mit nach Hause nehmen müssen, darauf, dass sie nicht aus dem Ruder laufen. Manche Unternehmen behaupten, dass Sie nur ein paar Stunden für das Projekt aufwenden müssen, dabei haben sie im Hinterkopf, dass Sie viel mehr Zeit und Mühe investieren müssen, als Sie erwartet haben. Wenn ein Projekt Ergebnisse liefert, die das Unternehmen in der Produktion verwenden kann, oder wenn man Sie bittet, einen Tag für eine Aufgabe aufzuwenden, sollten Sie außerdem keine Entschädigung verlangen, da dies unangemessen erscheint.
Senior-Entwickler müssen sich nicht beweisen.
Meistens sind erfahrene Entwickler nicht bereit, Codierungstests durchzuführen, weil sie glauben, dass sie sich nicht beweisen müssen. Nachdem sie mehrere Jahre lang gearbeitet und verschiedene Produkte und Codebeispiele entwickelt haben, würden sie lieber ihre Fähigkeiten unter Beweis stellen. Als Senior-Entwickler kann es riskant sein, Ihre Fähigkeiten unter Beweis zu stellen, da Sie aufgefordert werden, Ihre originellen Ideen einzubringen. Nichts wird das Unternehmen davon abhalten, Ihre Ideen aufzugreifen, umzusetzen und unabhängig davon weiterzuentwickeln, selbst wenn Sie beim Vorstellungsgespräch abgelehnt werden. Es besteht ein inhärentes Risiko, und Sie werden aufgefordert, im Voraus einen Mehrwert zu bieten.
Fazit
Erfahrene Softwareentwickler stellen die Gültigkeit von Codierungsbewertungen aus den oben genannten Gründen in der Regel in Frage. Daher ist es für Softwareentwickler keine Option, Codierungstests zu überspringen. Jeder, der mit der Einstellung von Technikern zu tun hat, weiß, dass viele Entwickler nicht für die Rolle qualifiziert sind. Daher ist eine Art Test, den die Kandidaten bestehen müssen, bevor sie zum Vorstellungsgespräch eingeladen werden, eine Notwendigkeit.
Softwareingenieure sind in der Regel nicht gut darin, sich selbst zu verkaufen, und großartige Kandidaten verkaufen sich auf dem Papier oft massiv unter Wert. Ein Lebenslauffilter kann Ihnen helfen, einige Kandidaten auszusortieren, die eindeutig nicht für die Stelle qualifiziert sind, und Lebensläufe nach Priorität zu sortieren. Darüber hinaus hat ein Lebenslauffilter eine inhärente Voreingenommenheit gegenüber Bewerbern mit guten Zeugnissen (Ausbildung und beruflicher Werdegang). Gute Programmierer können von überall her kommen, und wenn Sie nach Schlüsselwörtern suchen, entgehen Ihnen wahrscheinlich eine Menge großartiger Kandidaten. Aber Sie können nicht einfach mit allen Bewerbern ein Vorstellungsgespräch führen.