it-swarm-eu.dev

Wie interviewst du jemanden mit mehr Erfahrung als du?

Das Unternehmen, für das ich arbeite, sucht einen leitenden Entwickler mit mehr Erfahrung als ich und erwartet, dass ich den technischen Teil des Interviews mache. Ich habe nur ein paar Jahre programmiert und bin mir nicht sicher, ob ich über die erforderlichen Kenntnisse verfüge, um die Codierungsfähigkeiten von jemandem zu bewerten, der ein besseres Verständnis/Erfahrung hat als ich.

Kann jemand einige technische Interviewfragen empfehlen, die ein gutes Mittel zur Bewertung von Programmierkenntnissen auf höherer Ebene sind, aber dennoch diejenigen sind, die ich verstehen kann?

Ich würde sagen, ich bin hinter dem jr. Programmiererniveau, aber bei weitem nicht älter. Das meiste, was ich getan habe, sind kleine Apps (Web und Desktop), von denen einige ziemlich kompliziert sind, aber alle sollten nur von einer Handvoll Benutzern verwendet werden. Ich habe das Gefühl, ein gutes Verständnis für die meisten Programmierkonzepte zu haben und in der Lage zu sein, fast alles selbst zu lernen/zu lehren, aber mir fehlt die Erfahrung. Mein Chef sagt mir gern: "Sie wissen nicht, was Sie nicht wissen.".

Insbesondere möchten wir, dass die Person, mit der wir Erfahrung haben (die ich nicht habe), Erfahrung hat: Mehrschichtige Entwicklung, Mehrbenutzerumgebung, umfangreiche Anwendungsentwicklung, bidirektionales Messaging, gemeinsame Sitzungen, und Multithreading/BackgroundWorkers.

PDATE :

Als Antwort auf Thors Kommentar unten haben wir vor ein paar Monaten jemanden eingestellt, und ich denke, es hat großartig geklappt. Ich lerne viel, nicht nur über das Codieren, sondern auch über Dinge wie Entwurfsmuster, Softwarearchitektur, Dokumentation und wie andere größere Programmierteams Dinge erledigen. Es ist nicht immer einfach, jemanden hereinzukommen und bessere Wege aufzuzeigen, um Dinge zu tun, die Sie getan haben, aber wenn Sie Ihren Stolz schlucken und bereit sind, neue Dinge auszuprobieren, können Sie viel lernen.

Der Interviewprozess verlief besser als ich erwartet hatte. Ich fing an, Fragen zu Dingen zu stellen, mit denen ich vertraut war, und stellte dann einige Fragen zu einigen Dingen, mit denen ich zu kämpfen hatte. Wann immer der Befragte etwas sagte, das ich nicht verstand, bat ich ihn, es mir zu erklären und es dann aufzuschreiben, damit ich es später nachschlagen konnte. Insgesamt hatte ich das Gefühl, eine ziemlich gute Vorstellung von den Fähigkeiten, der Intelligenz und der Arbeitsweise des Bewerbers zu bekommen.

81
Rachel

Das kannst du nicht.

Stattdessen würde ich Ihnen vorschlagen, im Interview eine Liste mit Probleme, die Sie heute haben zu erstellen und ihn zu fragen wie er sie lösen würde.

Dies ist aus den folgenden zwei Gründen eine sehr interessante Methode:

  1. Es ist kostenlose Beratung. Selbst wenn Sie den Kerl nicht einstellen, kann er vorschlagen Gute Lösungen für Ihre Probleme.

  2. Wenn er mit interessanten Lösungen kommt, ist er ein Problemlöser. Der Typ, den Sie einstellen möchten.

85
user2567

Nutze dein Alter als Vorteil.

Ich habe eine Menge Leute interviewt, die älter sind als ich. Ich wähle eine Technologie aus, die ich ziemlich gut kenne und sage ihnen, dass ich von Technologie X gehört habe, sie aber nie benutzt habe. Ich bitte den Kandidaten, mir einen Überblick über die Technologie und deren Verwendung in einem Projekt zu geben.

Das funktioniert überraschend gut. Wenn der Kandidat diese Technologie X nur als Schlagwort in seinem Lebenslauf verwendet, ist seine Erklärung zunächst nicht sinnvoll. Wenn sie Ihnen kein gutes, konkretes Beispiel dafür geben können, wie sie diese Technologie in ihren früheren Projekten eingesetzt haben, haben Sie genau dort eine große rote Fahne.

Ich habe jemanden interviewt, der Java Spring-Erfahrung. Ich hatte Spring in meinem vorherigen Job verwendet, und eines der großen Merkmale von Spring ist Dependency Injection. Ich habe dem von mir interviewten Kandidaten erzählt, von dem ich gehört habe Spring und benutzte es nie. Er fing an weiter und weiter zu plappern, konnte mir aber nicht sagen, wo er Spring AOP benutzt hatte und konnte mir Dependency Injection nicht erklären, selbst nachdem ich explizit fragte, nachdem er diese Dinge in seinem Lebenslauf gesehen hatte. Er sagte mir nur, dass sie wirklich cool seien und es dort draußen so viel zu lernen gibt, usw. usw. Es stellte sich heraus, dass er es nicht wusste jack ... und ich war der einzige, der herausfand, dass ich ein jüngeres Mitglied des Entwicklerteams war.

Nutzen Sie also Ihr Alter als Vorteil! Gehen Sie hinein, seien Sie zuversichtlich und stellen Sie einige Fragen zu Technologien, die Sie gut kennen.

62
LGriffel

Denken Sie daran, dass sie möglicherweise kein besserer Entwickler sind als Sie, nur weil sie mehr Erfahrung als Sie haben. Der Satz "Ein Jahr Erfahrung wiederholt n mal." kommt, weil Sie dies in der Industrie sehen. Daher sollte Ihre erste Aufgabe während des Interviews darin bestehen, festzustellen, ob sie tatsächlich über die entsprechende Erfahrung verfügen und sich als jemand präsentieren können, der weiß, was sie tun. Nur weil jemand n Jahre Erfahrung in der Industrie hat, bedeutet dies nicht, dass er eine Menge Erfahrung in einer bestimmten Sprache, Bibliothek oder einem bestimmten Framework hat, sodass er möglicherweise noch von Zeit zu Zeit zu Ihnen kommt zu Zeit Fragen stellen, während sie etwas lernen.

Denken Sie als nächstes daran, dass ein guter leitender Entwickler jemand ist, an den Sie sich wenden und nach etwas fragen sollten, mit dem Sie Probleme haben. Dies ist ein guter Zeitpunkt, um ihnen einige Designfragen zu stellen, bei denen Sie Probleme hatten, und um zu sehen, wie sie reagieren und was ihre Argumentation in ihrer Erklärung ist. Haben sie schon einmal etwas Ähnliches gesehen, machen sie aufgrund ihrer Erfahrung eine fundierte Vermutung, haben sie einen Artikel online oder in einem Tagebuch gelesen?

Schließlich ist noch zu prüfen, wie sie sich dem Debuggen von Code nähern. Nach meiner eigenen Erfahrung habe ich festgestellt, dass bestimmte Debugging-Techniken unabhängig von der Sprache in der Regel universell angewendet werden. Geben Sie dem Kandidaten ein Beispiel für einen der esoterischeren Fehler, auf die Sie gestoßen sind, und lassen Sie sich von ihm durch den Umgang mit dem Fehler führen. Haben sie einen Einblick in das Problem, der nicht sofort offensichtlich ist?

Zusammenfassend kann das Einschüchtern eines Kandidaten mit einem beeindruckenden Interview einschüchternd sein, aber es gibt etwas, das Sie abdecken müssen, unabhängig davon, auf welchem ​​Niveau er sich befindet (dh wissen sie tatsächlich, was sie tun), und sobald dies abgeschlossen ist, können Sie mit der Prüfung beginnen sie zu sehen, wie sie ihre Erfahrungen anwenden. Wie die Kandidaten ihre bisherigen Arbeitserfahrungen anwenden, wird einen Kandidaten mehr als einen anderen hervorheben.

31
rjzii

Ich mag die Nutze dein Alter als Vorteil Antwort sehr, und ich würde etwas Ähnliches vorschlagen:

Nutzen Sie Ihre geringere Erfahrung als Vorteil

Diese Person wird wahrscheinlich Ihr Chef oder Mentor sein. Stellen Sie also Fragen so, dass Sie herausfinden können, ob diese Person Sie tatsächlich betreuen kann.

Stellen Sie komplizierte Fragen, die viel einfacher gemacht werden könnten oder die überkomplizierte Probleme beinhalten. Wenn er/sie etwas Gutes ist, wird er/sie nicht nur versuchen, die Frage zu beantworten/das Problem zu lösen, sondern tatsächlich zum eigentlichen Problem gelangen und Ihnen die Fehler in Ihrer Frage zeigen. Wenn er/sie es auf höfliche Weise schafft, ohne Sie einzuschüchtern, ist er/sie ein Bewahrer.

24

Das wirklich Wichtige ist, dass Sie sicherstellen, dass er der richtige Art erfahrene Entwickler für das ist, was Sie brauchen.

Während die Menschen ihre Karriere fortsetzen, tendieren sie dazu, in Bezug auf das, was sie tun, in verschiedene Richtungen zu gehen. Möglicherweise interviewen Sie Leute, die Experten darin sind, große Teams von Programmierern zu leiten oder mit verschlungenem Legacy-Code zu arbeiten, und die ziemlich brillant darin sind, was sie tun, ohne dass sie die Person sind, die für Ihre Rolle richtig ist. Versuchen Sie also im Voraus, eine Vorstellung davon zu haben, wonach gena Sie suchen, und überlegen Sie sich Fragen, die genau die Art von Entwickler für Ihren Job von anderen unterscheiden.

8
glenatron

Ich musste das mehrmals machen. Ich habe es schrittweise gelernt.

  1. Beginnen Sie mit den gleichen Fragen, die ich den Hochschulabsolventen stelle. Ich habe dies getan, weil die Position, für die ich das technische Interview geführt habe, eine Programmierposition war, bei der wir erwartet hatten, dass der Entwickler im Code mitspielt, und ich wollte sicherstellen, dass die Kandidaten programmieren können. Mit nur einer Ausnahme konnte keiner der Kandidaten - sie waren schlechter als alle College-Absolventen. Alle waren viel zu lange in Führungspositionen.
  2. Für den Kandidaten, der einen grundlegenden Codierungstest bestanden hat, hatte ich einige allgemeinere Fragen zum Thema "Wie würden Sie mit dem X-Szenario umgehen?". Wenn Sie beispielsweise in Ihrem Projekt Webdienste ausführen, stellen Sie sich eine interessante Frage zu Webdiensten vor und fragen Sie den Kandidaten, wie er diese lösen würde. Ich würde nicht empfehlen, dass Sie direkt daran arbeiten, hauptsächlich aufgrund des Problems des geistigen Eigentums und der firmeneigenen Daten. Gib das Zeug nicht raus!
  3. Verbringen Sie Zeit damit, den Kandidaten nach Informationen in seinem Lebenslauf zu fragen. Das ist wichtig. Sie können sich über seine besten und schlechtesten Teamerfahrungen, Erfahrungen als Supervisor usw. informieren. Versuchen Sie, ein Gefühl für den Arbeitsstil der Person zu bekommen, um festzustellen, ob sie in Ihr Team passt.

Mein größtes Problem bei der Befragung älterer Kandidaten war, dass sie oft sehr nervös wurden, von einer jungen Person interviewt zu werden, insbesondere von denen, die meine grundlegenden Codierungstests nicht bewältigen konnten. Versuchen Sie, in den Fähigkeiten, die Sie während des gesamten Interviews zeigen, nicht bedrohlich zu wirken - konzentrieren Sie sich auf sie, auch wenn sie Ihre Fragen nicht gut beantworten können. Versuchen Sie, das Interview auf Fragen zu verzerren, die sie beantworten können, wenn sie die Grundlagen nicht erfüllen.

7
justkt

In Bezug auf den eigentlichen Interviewprozess behandeln Sie sie grundsätzlich genauso wie jede andere Person, die Sie einstellen. Es sollte einen ähnlichen Einstellungsprozess geben:

  1. Auswahl durch Lebenslauf oder Empfehlung der Agentur.
  2. Eignungstest (Kombinieren von Dingen wie FizzBuzz , strdup ()/isAlpha (), OOD usw.)
  3. Telefoninterview (zur schnellen Beseitigung, wenn sie nicht gut kommunizieren)
  4. Persönliches Interview
  5. Schriftliche Kodierungsübung
  6. Treffen Sie einige der Teammitglieder.
  7. Für eine erfahrene Person, die ein höheres Risiko und höhere Kosten mit sich bringt, sind zusätzliche Interviewrunden akzeptabel, aber Sie sollten ihnen klar mitteilen, wo sie sich gerade befinden (d. H. Dies ist 1 von 3 Interviewrunden).

Es gibt viele andere Beiträge auf dieser Site, die allgemeine Diskussionsthemen behandeln, die Sie im Interviewprozess behandeln sollten - hier ist meine Antwort auf einen von ihnen .

An allen Punkten des Interviewprozesses sollte eine erfahrene Person ein hervorragendes Verständnis für ihre beworbenen Spezialitäten nachweisen. Sie können sie zu jedem Thema, das Sie während der Diskussionen behandeln, eingehend untersuchen. Stellen Sie Fragen an die Grenzen Ihrer Erfahrung/Ihres Komforts und prüfen Sie, ob sie ohne Sorgen fortgesetzt werden können. Wenn Sie mit etwas, mit dem Sie nicht viel Erfahrung haben, in die Tiefe gehen müssen, führen Sie eine Websuche nach einigen Beispielfragen durch (wählen Sie sie aus), lesen und verstehen Sie die Antworten vor dem Interview und stellen Sie dem Kandidaten dann eine dieser Fragen. Erwarten Sie nicht, dass sie alle Antworten kennen, also haben Sie eine Auswahl an Fragen.

Es gibt zwei Arten von erfahrenen Ingenieuren, die Sie einstellen können:

1) Relevante Branchenerfahrung

Dies ist die Person, zu der Sie Ihre Liste der aktuellen Probleme bringen und darüber sprechen können, wie sie diese Probleme angehen könnten. Sie sollten den Grad des Verständnisses für jedes der domänenspezifischen Themen in Ihrer Branche messen. Wenn Sie in dieser Branche tätig sind, können Sie eine "dumme" Antwort von einer "guten" Antwort unterscheiden und wahrscheinlich auch eine "erfahrene" Antwort erkennen. Im Gegensatz zu anderen Antworten würde ich nicht erwarten, dass sie Ihre aktuellen Probleme tatsächlich lösen - das wird passieren, wenn Sie sie einstellen -, aber Sie brauchen sie, um Sie davon zu überzeugen, dass sie es könnten, sobald sie angefangen haben.

2) Keine relevante Branchenerfahrung

Dieser Kandidat verändert möglicherweise die Branche, verfügt jedoch über gute Erfahrungen mit den von Ihnen benötigten Grundlagentechnologien/-plattformen/-fähigkeiten. Gehen Sie auf diese Punkte ein, aber erwarten Sie nicht, dass sie Lösungen für domänenspezifische Probleme finden, obwohl Sie nur darüber reden könnten. Wenn Ihr Unternehmen beispielsweise Facebook ist und die Person, die Sie interviewen, heiß auf PHP und C++) ist, wäre es unrealistisch zu erwarten, dass sie alle Fallstricke massiver Serverfarmen kennt (es sei denn sie behaupten es in ihrem Lebenslauf).

3
JBRWilkinson

Eine Sache, auf die ich nicht ausdrücklich hingewiesen habe, ist: "Sie kennen Technologie X sehr gut und es klingt sehr interessant. Könnten Sie es mir bitte in fünf Minuten erklären?"

Da von Ihnen höchstwahrscheinlich erwartet wird, dass Sie den Code, der irgendwann aus der neuen Person kommt, pflegen können, ist es entscheidend, dass sie in der Lage ist, ihn anderen Programmierern effizient und gut zu erklären. Betrachten Sie es als Kommunikationsfähigkeit.

Ein gründliches Verständnis ist erforderlich, um andere Entwickler auf ihrem Niveau zu treffen und Gedanken und Ideen auf ihrem Niveau zu kommunizieren.

Wenn die Person nicht mündlich kommunizieren kann, schreibt sie höchstwahrscheinlich nur den Code für den Compiler, nicht für den Betreuer.

2
user1249

Ich stimme Steven in Bezug auf den Mentoring-Teil zu. Tatsächlich würde ich sagen, dass Sie ihm/ihr Fragen dazu stellen können, wie er/sie zu Mentoring steht und wie er/sie in verschiedenen Szenarien vorgeht. Bewerten Sie dann anhand der Antwort (Sie können Feedback von Ihrem Chef erhalten, wenn Sie Lust dazu haben, oder die tatsächlichen Antworten in der Nachbesprechung besprechen).

Sie können auch Fragen stellen, die Sie einem Kollegen stellen würden, da der Kandidat wahrscheinlich in der Lage sein sollte, Ihre Arbeit zu lösen oder zumindest zu verstehen.

2
aditya

wählen Sie im Interview auf jeden Fall sein Gehirn für echte Probleme und Technologien aus, die Sie derzeit haben oder verwenden möchten

angenommen, er/sie ist ein kompetenter und einfallsreicher leitender Entwickler, entscheiden Sie sich für eine Einstellung oder nicht basierend darauf, ob Sie denken, Sie können von ihm/ihr lernen und gut mit ihm/ihr zusammenarbeiten

sie interviewen nicht Ihren zukünftigen Chef, Sie interviewen Ihren zukünftigen Mentor. Suchen Sie sich nicht jemanden aus, der alle Antworten kennt, aber nicht unterrichten kann

2
Steven A. Lowe

Ich empfehle Ihnen ernsthaft, das Buch zu lesen "Smart and Gets Things Done: Joel Spolskys prägnanter Leitfaden zur Suche nach dem besten technischen Talent" .

Ich habe nie jemanden eingestellt, aber manchmal, als ich der Befragte war, wünschte ich mir, dass einige Idioten, die nur über Schlagworte Bescheid wissen und mich interviewen, die Argumentationslinie in diesem Buch enthüllen. Der Text ist sehr flüssig und angenehm zu lesen.

Und nein, ich mache keine Werbung nur, weil diese Seite vom Autor des Buches stammt. Das Buch ist wirklich großartig und ich werde es jedem empfehlen, der in der Lage ist, IT-Mitarbeiter einzustellen, insbesondere denen, die die Technologie nicht verstehen. Heutzutage ist es sehr üblich, einen nicht-technischen Projektmanager oder Chef zu haben.

1
sergiol

Nehmen Sie einige der Probleme, die Sie bereits gelöst haben. Beschreiben Sie ihm, was getan wurde, um das Problem zu lösen (behalten Sie es als dritte Person; Sie möchten hier nicht Ihr persönliches Ego aufs Spiel setzen). Fragen Sie ihn, was er "anders" gemacht hätte. Sie sollten in der Lage sein, basierend auf dem, was er vorschlägt, herauszufinden, ob dies konzeptionell besser oder schlechter gewesen wäre als das, was Sie getan haben.

1
GWLlosa