Während sich die meisten Interviewfragen auf das aktuelle Wissen eines Kandidaten konzentrieren oder seine / ihre Fähigkeiten zur Lösung algorithmischer Probleme überprüfen, möchte ich einen Entwickler einstellen, der sich leidenschaftlich für das Programmieren interessiert.
Was wäre, wenn ich nicht Fragen stellen würde?
Was wissen Sie über Technologie "X"?
Ich werde das Wissen überprüfen, das nicht direkt mit der Lösung von Software-Engineering-Problemen zusammenhängt, sondern zeigt, wie neugierig Sie auf IT sind.
Wenn ich zum Beispiel einen Java-Entwickler suche, kann ich fragen, wer die einflussreichsten Personen in der Java-Welt sind, oder einen einfachen Scala-Ausschnitt zeigen und einen Kandidaten bitten, den Code zu interpretieren.
Ich überlegte sogar, ein Foto von Alan Turing zu zeigen und den Befragten raten zu lassen, wer auf dem Foto ist. Ist diese Praxis sinnvoll?
Antworten:
Sie müssen ihn nur bitten, Ihnen von einem der Projekte zu erzählen, an denen er am meisten Spaß hat. Sie werden in den folgenden 60 Sekunden mehr über seine Begeisterung herausfinden, als Sie ihm jemals Fotos von verstorbenen Persönlichkeiten zeigen konnten.
quelle
Das ist Trivia und technisches Wissen. Wenn Sie herausfinden möchten, ob sie eine Leidenschaft für das Programmieren haben, müssen Sie ihre Leidenschaft in irgendeiner Weise einbringen. Dazu gibt es einige einfache Möglichkeiten:
Wenn keine, wenn diese einen Funken in den Augen haben, dann haben Sie wahrscheinlich keinen leidenschaftlichen Programmierer. Sie könnten einige treffen, die mit anderen Dingen zu beschäftigt sind - aber ich wette, Sie werden eine Geschichte sehen oder zumindest wirklich bedauern, dass Sie einige dieser Punkte nicht erreicht haben.
quelle
engage their passion
Insbesondere durch die Frage, was sie an der Programmierung interessiert hat. Ich glaube, dass jeder passionierte Programmierer ausführlich auf dieses Thema eingehen wird.engage their passion.
( Warnung, langer Beitrag, nur teilweise zum Thema )
Nun, ich habe seit Ewigkeiten dasselbe gefragt. Vor ungefähr 6 Jahren habe ich versucht, Personalvermittler dazu zu bringen, zu verstehen, worum es bei uns geht (sie haben nur die Kästchen angekreuzt, wie Sie sagen).
Zu der Zeit schrieb ich:
Bist du ein Freak wie wir? (Offener Brief an Personalvermittler und Kandidaten).
Unsere Kultur ist uns wichtig, ich spreche hier nicht von Rennen, sie basiert auf dem Hintergrund, wie Sie Ihren Job sehen, was Sie beabsichtigen, aus Ihrem Job herauszukommen, wie Sie Ihren Job angehen und mit anderen umzugehen.
Ich habe mich vorher mit Rasse verwechselt, deshalb werde ich jetzt klarstellen, dass dies keine rassenbasierte Sache ist, sondern eine Denk- und Antriebssache. Wir haben mit Leuten aus vielen großartigen Rennen zusammengearbeitet. Wir kennen auch viele, die schlicht und einfach nutzlos sind. Das Rennen definiert also überhaupt nicht, wonach wir suchen, es ist eine „kulturelle“ Passform.
Es gibt viele Subkulturen in Australien, von denen die meisten nicht zusammenpassen würden. Ich versuche, unsere zu erklären - The Geek.
Viele unserer Jobs in den letzten 14 Jahren kamen von unseren Kunden, die fehlgeschlagene Projekte bereinigen und abschließen mussten, hauptsächlich, weil das Unternehmen die falsche Art von Personal eingestellt hat ... es kostet weit mehr als nur ihren Lohn, wenn man ihn bekommt falsch.
Wenn wir nun versuchen, diese Art von Menschen auszuwählen, meinen wir, wenn wir "wie wir" sagen:
Die Sprache ist ein Hindernis für die Zusammenarbeit mit uns. Wir haben hier so ziemlich unsere eigene Sprache, du brauchst mindestens Englisch und einige technische Fähigkeiten, kombiniert mit einem Sinn für Humor.
Wenn Sie uns nicht verstehen, werden Sie nicht verstehen, was Sie tun müssen oder wie der Rest von uns die Lösung implementieren wird ... Sie werden nicht von Dauer sein.
Warum möchten Sie mit uns zusammenarbeiten?
Wollen Sie jetzt noch für uns arbeiten? Warum?
Fazit
Ich schrieb, dass ich 2004/05 ungefähr 50 oder 60 Interviews selbst gemacht habe, mit 14 oder mehr Personalagenturen zusammengearbeitet habe, die jeden, der mich ankreuzte, bewarfen Menschen aus einem Interview.
Bisher hatte ich den größten Erfolg darin, einen einzigen Personalvermittler zu finden, der die Bedeutung des oben Gesagten und das, wonach ich suchte, verstand und die Liste nach Personen filtern konnte, die passten.
Jetzt habe ich einen Personalvermittler, von dem ich vertraue, dass er mein Geschäft kennt, meine Bedürfnisse kennt. Wir essen jeden zweiten Monat zu Mittag, um ihn einzuholen. Ich lasse ihn los, gebe ihm die Zeit und vertraue darauf, dass er mir nur geeignete Kandidaten vorstellt.
Die Rekrutierung ist ein Spezialgebiet, und während Sie am Ende des Tages das letzte Wort haben ... wenn Sie das Geld haben, lassen Sie die Leute mit Fähigkeiten ihr Ding machen.
Sobald sie jemanden gefunden haben, interviewe ich sie, frage sie nach ihren Erfahrungen, ihren Interessen, den Dingen, die sie motivieren, den coolsten Projekten, die sie gemacht haben, höre ihre Antwort auf das oben Gesagte ... sobald ich überzeugt bin, bringe ich sie dazu ein zweites interview mit dem team über dem mittagessen, alle anderen im team stellen ihnen fragen und lassen mich die daumen hoch oder runter wissen ... dann stellen wir ein.
quelle
Alan Turing ist ein bisschen zu viel, aber einen einflussreichen Menschen zu nennen, klingt für mich in Ordnung. Wenn mir diese Frage gestellt würde, würde ich sagen, der Typ hat Effective Java geschrieben ...
Mieten ist eine Einbahnstraße. Sie müssen zuerst Ihren Talentpool kennen. Wenn Sie einen leidenschaftlichen Programmierer einstellen möchten, müssen Sie zuerst einige Fragen stellen. Haben Sie spannende Probleme, die sie lösen müssen? Bieten Sie zweitens eine wettbewerbsfähige Vergütung an?
Wenn Sie in der Realität nicht beides anbieten können, ist es besser, sich mehr auf Fähigkeiten und Professionalität zu konzentrieren.
quelle
Die Leute von 37 Signals haben einen großartigen Beitrag geschrieben , in dem es darum geht, großartige Programmierer einzustellen.
Sie können den Beitrag lesen, um Details zu erfahren (es lohnt sich!), Aber er lässt sich grob wie folgt zusammenfassen: Es gibt Dinge, die Sie während des Interviews prüfen und nachfragen können, z
Sie können das Risiko, jemanden einzustellen, weiter verringern, indem Sie ihn für ein kleines Projekt einstellen, um zu sehen, wie er funktioniert. Dies zeigt Ihnen, wie sie Aufgaben erledigen, ihre Zeit verwalten, kommunizieren und so weiter.
quelle
quelle
Nein, dieser Ansatz macht absolut keinen Sinn. Ich würde ein Foto von Alan Turing wiedererkennen, und ich könnte einige der führenden Persönlichkeiten in der Entwicklung von Java nennen, aber das sagt nichts darüber aus, wie leidenschaftlich ich bin, was die Programmierung uns bieten kann. Ich würde auch nicht alle Open-Source-Projekte auflisten, an denen Sie gearbeitet haben. Ein Teil davon ist leicht zu erwerben, und ein Teil davon wird sehr oft für den Lebenslauf verwendet.
Bitten Sie sie, ein noch so triviales Problem der realen Welt zu beschreiben, das durch die Programmierung einer Lösung behoben werden kann. Es muss nicht so praktisch sein, wie die dahinter stehende Infrastruktur zu identifizieren. Haben Sie sich nur Gedanken darüber gemacht, wie Sie Ihren Weg in eine bessere Art und Weise programmieren können, etwas zu tun? Die verwendeten Sprachen sind von untergeordneter Bedeutung. Wenn Sie an eine bestimmte Sprache gebunden sind, bekommen Sie nicht unbedingt jemanden, der sich leidenschaftlich für das Programmieren interessiert.
quelle
Die Definition von Leidenschaft ist hier weit gefasst. Ich habe verschiedene Arten von Programmierern gesehen. Wir können sie nicht einfach Programmierer nennen. Für mich definiere ich einen leidenschaftlichen Programmierer,
quelle
Wollen Sie "leidenschaftliche" oder kompetente Leute? Ich hätte lieber Leute, die sich mit ihrem Geschäft auskennen, aber zwischen ihm und der Realität unterscheiden können, als Kinder, die nichts außerhalb ihres Computerbildschirms wissen und keine Hobbys haben, außer Open Source-Dingen, zu denen sie täglich 16 Stunden beitragen (die Hälfte) davon während ich nominell für mich arbeite), etc.
quelle
Stellen Sie ihm praktische Fragen zur Problemlösung
Wenn Sie sich nicht nur über die Fähigkeiten dieses Kandidaten informieren, sondern auch genau ansehen, wie enthusiastisch er sich den Fragen der realen Problemlösung nähert, die Sie ihm stellen, können Sie sich ein gutes Bild davon machen, wie leidenschaftlich er mit dem Programmieren beschäftigt ist. Und wenn Sie ihm verschiedene Arten von Fragen zur Problemlösung stellen (einige Codierungsfragen, einige Fragen zum Algorithmusdesign, einige Fragen zum Systemdesign), können Sie sich ein Bild davon machen, für welche Programmierbereiche er am meisten begeistert ist.
Ich schlage vor, Joel in Software's Guerilla Guide to Interviews zu lesen. Er erklärt Ihnen nicht nur, wie Sie diese Leidenschaft finden, sondern auch, dass Leidenschaft nicht das wichtigste ist, wonach Sie suchen - Sie suchen nach "klug" "und" erledigt Dinge ". (Er tut Leidenschaft erwähnen, aber ich glaube , dass seine Absicht ist , dass es ein Zeichen für die beiden anderen Dinge , die Sie sind der Suche nach).
quelle
Ich würde sagen, wenn Sie eine Leidenschaft für das Programmieren haben, können Sie andere entdecken. Alles, was Sie tun müssen, ist über das Programmieren zu sprechen, was während eines Interviews nicht schwierig sein sollte. Und konzentrieren Sie sich auf den Kandidaten, der das Gespräch führt. Stellen Sie sicher, dass Sie das Kompetenzniveau unabhängig von ihrer Leidenschaft qualifizieren. Andernfalls kann dies Ihr Urteilsvermögen beeinträchtigen.
quelle
Frag ob:
quelle
Bevor Sie leidenschaftliche Programmierer einstellen können, müssen Sie feststellen, was Sie damit meinen.
Wenn ich bei Programmierern nach Leidenschaft Ausschau halte, hat das mit der Begeisterung ihrer Stimme zu tun, wenn sie über ein schwieriges Arbeitsproblem sprechen, das sie lösen mussten. Es hat zu tun mit leidenschaftlich genug, um etwas zu bekommen Tiefe von Wissen und die harten Probleme zu lösen verstärkt. Es hat nichts damit zu tun, ob sie außerhalb der Arbeit programmieren oder ob sie anhand ihrer Bilder drei berühmte Programmierer aus der Vergangenheit nennen können.
Wenn Sie ein Interview führen, können Sie Leidenschaft in der Art und Weise hören, wie sie Fragen beantworten. Sie gehen tiefer als die nicht leidenschaftlichen Menschen und neigen dazu, begeistert zu sein, was sie sagen. Sie verstehen den Geschäftsbereich, in dem sie programmiert haben, und können darüber sprechen, wie sie Probleme lösen und welche Vorschläge sie in ihrer Arbeit gemacht haben, um den Programmierprozess oder das Design der Anwendung zu verbessern. Sie sprechen über Refactoring und Designmuster, ohne speziell nach ihnen gefragt zu werden.
Wenn sie über ihre Leistungen sprechen, sprechen sie über Dinge, die über die grundlegende Kodierung eines Moduls hinausgehen. Sie sprechen darüber, wie sie ein Problem im Design erkannt und überarbeitet haben, oder sie sprechen darüber, wie sie eine neue Technik gefunden haben, um ein schwieriges Problem zu lösen, und sie sprechen mit Begeisterung. Ein leidenschaftlicher Mensch ist schwer zum Schweigen zu bringen. Sie wollen wirklich ihre Erfolge und Ziele für die Zukunft beschreiben. Möglicherweise haben sie Dinge, an denen sie speziell arbeiten möchten, und ihre aktuellen Angebote nicht. Sie zeigen ein Muster des Kompetenz- und Komplexitätswachstums ihrer Tätigkeiten.
quelle
Fragen Sie, was er in seiner Freizeit macht. Wenn es um das Codieren und Bearbeiten seines persönlichen Projekts geht, ist das ein ziemlich sicheres Zeichen für leidenschaftliche Programmierer. Nicht alle leidenschaftlichen Programmierer programmieren in ihrer Freizeit, aber die meisten, die dies tun, sind leidenschaftlich
Eine andere Sache ist, ihn zu bitten, die Anzahl der Stunden zu schätzen, die er programmiert hat, je mehr Stunden desto leidenschaftlicher (altersbereinigt)
PS. Ich sage nicht, dass Sie Ihre ganze Zeit damit verbringen sollten, zu programmieren. Sie müssen Leben, Hobbys usw. usw. haben. Wir neigen jedoch dazu, Zeit mit den Dingen zu verbringen, die wir lieben (Zeit mit einem Ehepartner und Kindern zu verbringen, ist akzeptabel :), also ist es ein guter Indikator , zusätzliche Zeit für die Kodierung einzuplanen .
... und yeah yeah, ihr nicht leidenschaftlichen Programmierer könnt mich runterstimmen, was ihr wollt;)
DS.
quelle
Vor dem Interview können Sie anhand des Lebenslaufs den Unterschied zwischen einem leidenschaftlichen Entwickler und dem Rest erkennen. Der leidenschaftliche Entwickler spricht darüber, was sie getan haben, der Rest darüber, wie sie es getan haben. Der leidenschaftliche Entwickler listet seinen Blog, seine persönlichen Projekte usw. auf, der Rest hat sie nicht.
Mein Vorgesetzter nahm an meinen ersten Interviews teil und war beinahe fertig, als ich während des Interviews noch nicht einmal einen Kandidaten überprüft hatte. Er fragte mich später, warum ich es übersprungen habe. "Ich hatte seinen Code bereits in seinem Blog gelesen, ich weiß, dass er Code kann."
Während des Interviews identifiziert eine einzige Frage die Leidenschaft, "was Sie in die Technologie gebracht hat", für eine Person, die Sie wahrscheinlich einem leidenschaftlichen Entwickler entziehen müssen, wenn sie anfangen, sich über das erste Mal, als sie einen Computer benutzten, ein Programm schrieben und so weiter und so fort. Ich muss ein Gähnen unterdrücken, wenn ich eine Antwort von den anderen höre.
Schließlich beginnt mein Tech-Bildschirm mit Fragen, die einen leidenschaftlichen Entwickler beleidigen könnten (und ich stelle sie als solche vor), der nicht leidenschaftliche Entwickler könnte einige oder sogar alle richtig beantworten; Der leidenschaftliche Entwickler wird sie abschütteln, als ob sie ein Spickzettel hätten.
Meine Neigung ist es, einen leidenschaftlichen Entwickler mit weniger Erfahrung einzustellen als einen erfahrenen Entwickler, der nicht darauf aus ist, zu lernen und zu wachsen. Die einfache Tatsache ist, dass sich die Technologie zu schnell ändert, um jemanden einzustellen, der nicht auf dem Laufenden bleibt, ohne dass der Job dies erfordert.
Ich erkenne voll und ganz an, dass dies kein Narrenbeweis ist. Einige Qualitätstalente könnten aufgrund meiner Methode durch meine Finger gleiten. Ich weiß, dass es Leute gibt, die hoch qualifiziert sind, aber mit 5 den Computer ausschalten. Andererseits hat mich der leidenschaftliche Programmierer regelmäßig beeindruckt, und trotz jahrelanger Erfahrung stelle ich schnell fest, dass ich so viel von ihnen lerne wie Sie sind von mir.
quelle
Alle guten Antworten hier - ich füge hinzu, dass ich oft frage, ob der Kandidat mit dem Code anderer Leute gearbeitet hat (manchmal hat er das College noch nicht abgeschlossen), und wenn ja, was ist der größte Ärger, den er mit diesem alten Code hat. Manchmal gehen sie los und beschreiben schlechte Muster und wie sie sie reparieren. Ich nehme das als gutes Zeichen. Andere Antworten mögen Ihnen einen sehr entspannten Programmierer oder einen pedantischen zeigen ... etwas, das Sie vielleicht wollen oder nicht wollen.
quelle