7 Fragen, die Software-Ingenieure in einem Interview stellen sollten

7 Fragen, die Sie in einem Software Engineering-Interview stellen müssen, um herauszufinden, ob es richtig passt

Wenn Sie nach einem neuen Job suchen, ist es offensichtlich, dass das Unternehmen Sie interviewt. Es kann schwieriger sein, sich daran zu erinnern, dass Sie auch das Unternehmen interviewen, um festzustellen, ob die Rolle, das Team und die Organisation insgesamt zu Ihnen passen. Das Letzte, was Sie wollen, ist, ein paar Jahre in einem Job zu verbringen, von dem Sie sich wünschen, Sie hätten ihn nie angenommen.

Und Sie können und sollten wählerisch sein: Als Ingenieur verfügen Sie über Fähigkeiten, die sehr gefragt sind. Es scheint, als würden alle in der Technologiebranche einstellen – und Software expandiert auch in viele andere Branchen. Dies ist umso mehr ein Grund, um sicherzustellen, dass Sie Unternehmen anhand ihrer Passform überprüfen und bewerten.

Aber wie machst du das eigentlich? Welche Fragen sollten Sie als Programmierer stellen, um herauszufinden, ob ein Unternehmen und eine Rolle gut zu Ihnen passen? Als leitender Softwareentwickler, der auch einige Zeit als Personalchef verbracht und viele Male auf beiden Seiten des Zauns interviewt hat, habe ich darüber nachgedacht.

Während die genauen Eigenschaften, die Sie priorisieren und suchen, je nach Wert und Arbeitsstil variieren, gibt es einige Fragen, die besonders aufschlussreich sein können.

  1. Wie sieht das Team aus?
  2. Was erwarten Sie von der Person in dieser Rolle?
  3. Was ist Ihr Tech Stack und welche Entwicklungswerkzeuge verwenden Sie?
  4. Wie werden Designentscheidungen getroffen? Und wenn es Konflikte gibt, wie werden diese Konflikte gelöst?
  5. Wie werden Projekte priorisiert und geplant?
  6. Was sind die größten Herausforderungen für Ihr Team?
  7. Was ist Ihre Diversity- und Inklusionsstrategie?

1. Wie sieht das Team aus?

Da Sie am engsten mit Ihrem Team zusammenarbeiten, haben diese Mitarbeiter den größten Einfluss auf Ihre Erfahrung im Unternehmen. Sie möchten wahrscheinlich ein Gefühl dafür haben, wie das Team aussieht. Wie viele Leute sind da? Was sind ihre Rollen? Wie interagieren sie? Einige Leute leben von größeren Teams, während andere in viel kleineren Teams am besten abschneiden. Einige Leute mögen den Kontext, den die enge Zusammenarbeit mit Leuten in anderen Teams mit sich bringt, während andere ihn eher ablenkend als hilfreich finden.

Wenn Sie nach der Größe und Struktur Ihres potenziellen Teams fragen und sich über dessen tägliche Funktionsweise informieren, erfahren Sie etwas darüber, wie kooperativ das Team ist, wie hoch das Dienstalter seiner Mitglieder ist und wie die Aufgaben verteilt sind. Arbeitet das Team viel mit Produktmanagement oder NOC (dem Network Operations Center)? Werden diese Funktionen als Teil des Teams betrachtet? Gibt es ein separates Ops-Team oder übt das Team devOps? Hat das Team Einblick in Kundenanliegen oder Input in Produktmerkmale? Wie ist der Manager in das Team eingebunden? Gibt es hochrangige Teammitglieder, von denen man lernen kann, oder junge Leute, die man betreuen kann?

Hier gibt es viel zu entpacken, aber die Antworten können Aufschluss darüber geben, ob es Möglichkeiten gibt, die Dinge zu lernen, die Sie lernen möchten – wie man einen Server am Laufen hält oder wie man einen Usability-Test durchführt – und sie können Ihnen einen Eindruck davon geben, was Die Teamdynamik wird sein.

Sie haben vielleicht ein sehr klares Bild davon, wonach Sie in einem Team suchen, aber wenn Sie Schwierigkeiten haben, genau herauszufinden, was für Sie wichtig ist, Denken Sie an vergangene Erfahrungen und an das, was Sie an ihnen geliebt oder als frustrierend empfunden haben. Die angezeigten Muster helfen Ihnen dabei, Ihre Prioritäten zu identifizieren.

2. Was erwarten Sie von der Person in dieser Rolle?

Dies kann interessante Informationen auf jeder Ebene und für jede Art von Rolle liefern, ist jedoch für übergeordnete Ingenieure besonders wichtig. Einstiegspositionen in Software sehen in der Regel unternehmensweit ähnlich aus und Titel und Bands sind konsistent. Auf höheren Ebenen gibt es jedoch tendenziell viel mehr Variationen.

Zum Beispiel kann ein leitender Softwareentwickler bei zwei verschiedenen Unternehmen völlig unterschiedliche Erwartungen haben. Als ich kürzlich ein Interview für Rollen mit diesem Titel führte, stellte ich fest, dass einige Unternehmen erwarteten, dass ich in einem kleinen Scrum-Team bin und meine gesamte Zeit mit dem Codieren verbringe, während andere erwarteten, dass ich einen großen Prozentsatz ausgeben würde (in mindestens einem Fall mehr als die Hälfte) meiner Zeit als Mentor, Sprecher oder funktionsübergreifender Mitarbeiter. Einige hofften, mein bereits vorhandenes Wissen nutzen zu können, während andere allgemeineres Design-Denken oder Führungserfahrung nutzen wollten. Keines davon ist schlecht, aber es ist möglicherweise nicht das, wonach Sie suchen.

Es ist auch wichtig herauszufinden, ob ein Unternehmen Wachstumschancen in den Bereichen bietet, auf die Sie sich konzentrieren möchten. Wenn Sie beispielsweise Ihre umfassenden Java-Kenntnisse nutzen möchten, aber eine neue Programmiersprache erlernen möchten, treten Probleme auf. Wenn sie wollen Nutzen Sie Ihre Kenntnisse des API-Designs und ermöglichen Sie Ihnen dennoch, eine neue Sprache zu lernen, die möglicherweise gut zu Ihnen passt.

3. Was ist Ihr Tech Stack und welche Entwicklungstools verwenden Sie?

Viele Ingenieure legen großen Wert auf den Tech-Stack, in dem sie arbeiten, und die Tools, die sie verwenden werden. Wenn Sie einer von ihnen sind, sollten Sie diese Frage auf jeden Fall stellen und sicherstellen, dass die Antworten Ihren Vorlieben entsprechen. Ich persönlich habe mich nie zu sehr um die genauen Sprachen oder Entwicklungstools gekümmert, die ein Unternehmen verwendet, aber ich finde sie immer noch nützlich, da diese Fragen auch den Ansatz des Unternehmens in Bezug auf Code und Projekte allgemeiner offenbaren können.

Als ich kürzlich ein Interview führte, stellte ich beispielsweise fest, dass eines der Unternehmen, mit denen ich sprach, eine hochmoderne Programmiersprache verwendete. Der Einsatz brandneuer Technologien kann eine Gelegenheit sein, Experte zu werden und die Richtung zu bestimmen, in die die Technologie branchenweit geht. Dies kann jedoch auch zu Überraschungsfehlern führen, deren Aufdeckung Wochen oder Monate in Anspruch nimmt, und zu mangelnder Unterstützung durch die Community.

Welche Entwicklungswerkzeuge ein Unternehmen verwendet, kann ebenfalls informativ sein. Wählen sie die besten Rassen oder billigere Alternativen? Versuchen sie, alles im eigenen Haus zu bauen? Fehlen ihnen Schlüsselelemente? Scheinen sie beispielsweise an Überwachungswerkzeugen zu sparen oder fehlen diese? Wenn sie nicht den Best Practices der Branche folgen, ist dies möglicherweise eine rote Fahne – oder Sie sehen dies als Gelegenheit für Sie, diese Praktiken einzuführen. Eine Ingenieurkultur positiv zu beeinflussen ist oft ein guter Weg, um befördert zu werden, aber es kann auch eine Menge Arbeit oder in einigen Fällen ein nicht gewinnbarer Kampf sein.

Natalia Vinnik, Senior Engineering Manager bei Google, fragt gerne speziell nach Tools zur Codeüberprüfung. Sie ist nicht an ein bestimmtes Tool gebunden, sondern versucht herauszufinden, ob es eine Kultur rund um Code- und Design-Reviews gibt. Zunächst einmal ist es ein Code – Review – Tool? Und steuern sie Produktionsänderungen?

„Es sagt viel über die englische Kultur aus“, sagt sie. Zum Beispiel kann es Ihnen sagen, „ob die Leute offen sind, um Feedback voneinander zu erhalten, oder ob es mehr um die Implementierung geht und [Code] keine Rolle spielt, solange es funktioniert.“ Unternehmen mit einer starken Kultur des Feedbacks zu Code sind in anderen Bereichen häufig offener für Feedback.

4. Wie werden Designentscheidungen getroffen? Und wenn es Konflikte gibt, wie werden diese Konflikte gelöst?

Einige Unternehmen sind sehr kooperativ und andere sehr hierarchisch. Einige haben strenge Prozesse und andere sind flüssiger. Nach Designentscheidungen zu fragen ist eine großartige Möglichkeit zu lernen, wie sich ein Unternehmen neigt. Darüber hinaus sind Designdiskussionen einer der Orte, an denen Konflikte am wahrscheinlichsten auftreten. Wenn Sie also verstehen, wie diese Konflikte gelöst werden, können Sie sich ein Bild vom allgemeinen Arbeitsstil in einem Unternehmen machen.

Plant das Team Entwürfe in gemeinsamen Sitzungen oder schreibt ein Ingenieur ein Entwurfsdokument? Wer ist für verschiedene Designs verantwortlich? Handelt es sich immer um einen einzelnen technischen Leiter oder wird die Verantwortung geteilt, wobei verschiedene Teammitglieder die Hauptrolle für verschiedene Projekte spielen? Wird Feedback in Gruppentreffen, Einzelgesprächen, E-Mails oder gar nicht besprochen? (Es kann ein Problem sein, wenn keine Möglichkeit besteht, Feedback zu geben.) Wenn es Meinungsverschiedenheiten gibt, trifft der leitende Ingenieur die Entscheidung oder der Manager oder die Gruppe mit einer Stimme?

Wenn Sie wie ich sind, ist eines der Dinge, die Sie an Software am meisten mögen, das Mitspracherecht bei Design und anderen technischen Entscheidungen. Dies ist möglicherweise nicht möglich, wenn Sie jünger sind und das Unternehmen sehr hierarchisch ist. Das andere Extrem kann jedoch auch eine rote Fahne sein – ich habe Unternehmen gesehen, in denen sehr wenig getan wird, weil die Kultur so kooperativ ist, dass Sie alle dazu bringen müssen, sich auf jedes kleine Detail zu einigen, bevor Sie fortfahren.

Hier gibt es keine richtige Antwort, nur eine, die Ihren Vorlieben entspricht. Die genaue Balance, die für Sie am besten funktioniert, hängt möglicherweise davon ab, wie viel Spaß Sie an erster Stelle am Design haben, wie viel Struktur undAnweisungen, die Sie bevorzugen, wie bereit Sie sind, Ihre Meinung zu äußern und zu äußern, und wie geschickt Sie darin sind, andere zu beeinflussen.

5. Wie werden Projekte priorisiert und geplant?

Wenn Sie verstehen, wie ein Unternehmen die Projekte auswählt, für die es seine Ressourcen einsetzen möchte, und wie diese Projekte verwirklicht werden, können Sie viel darüber erfahren, was dort wichtig ist – sowohl in Bezug auf Produkte als auch in Bezug auf technische Werte. Priorisiert das Unternehmen beispielsweise technische Schulden oder konzentriert es sich nur auf neue Funktionen? Können sie sich darauf konzentrieren, ein paar Dinge gut zu machen, oder versuchen sie, ein bisschen von allem zu machen? Bauen sie Dinge für die Ewigkeit oder sind sie überentwickelt?

Dies ist jedoch nicht der einzige Grund, diese Frage zu stellen. Die Antwort kann auch angeben, welchen Einfluss Sie als einzelner Ingenieur haben könnten. Wenn Sie eine großartige Idee haben, was würde es brauchen, um sie Wirklichkeit werden zu lassen? Gibt es viel Bürokratie oder hätten Sie viel Freiheit, um Dinge auszuprobieren? Wenn sie beispielsweise das Abhalten von Hackathons und die tatsächliche Implementierung von Funktionen erwähnen, die von Hacks inspiriert sind, kann dies auf eine Offenheit für Ideen hinweisen, die von überall her kommen.

Diese Frage kann auch einen guten Einblick geben, wie flink und schnell sich das Unternehmen wirklich bewegt. Jedes Softwareunternehmen, mit dem ich jemals gesprochen habe, hat behauptet, Agile zu praktizieren (fast alle Scrum). Einige von ihnen verwenden jedoch hauptsächlich die Wasserfallmethode mit einer Fassade aus Agile. Einige Menschen gedeihen besser in einer wirklich agilen Umgebung, in der sie ständig Anpassungen und Drehungen vornehmen, andere jedoch besser mit mehr Vorhersehbarkeit und längeren Zeithorizonten. In was grabenProzesse sehen tatsächlich so aus – anstatt nur nach einer Terminologie zu arbeiten, die möglicherweise nicht die Realität widerspiegelt – können Sie sicherstellen, dass Sie die richtige Lösung für sich finden.

6. Was sind die größten Herausforderungen für Ihr Team?

Ich lasse diese Frage gerne offen, da ich es interessant finde zu sehen, ob die Leute etwas Technisches, Kulturelles oder Prozessbezogenes auswählen. Unabhängig davon kann die Antwort viel über die Teamkultur aussagen und Ihnen einen Einblick geben, woran Sie möglicherweise arbeiten.

Sind die Herausforderungen, die sie mit sich bringen, etwas, das Sie gerne beheben möchten oder mit dem Sie zumindest arbeiten möchten? Samantha Paras, technische Leiterin bei DataFox, fragt dies auch gerne, um zu beurteilen, ob eine der genannten Herausforderungen ein Bereich ist, zu dem sie beitragen kann. Zu wissen, dass sie etwas bewirken kann, begeistert sie viel mehr für ein Unternehmen.

Gibt es Herausforderungen? Wenn ein Team nicht versucht, etwas zu verbessern, kann dies auf Apathie oder wenig Raum für Wachstum im Team hinweisen. Bezieht sich jeder im Team auf dieselbe Herausforderung? Konsistenz kann ein gutes Selbstbewusstsein im gesamten Team bedeuten (oder alternativ ein ernstes Problem). Scheinen sie optimistisch, eine Lösung zu finden?

Als ich in einem Unternehmen interviewt habe, hat jede einzelne Person, mit der ich gesprochen habe, darauf hingewiesen, dass ihr Design- und Entscheidungsprozess umständlich und langsam ist. Obwohl ich mich offensichtlich nicht damit befassen wollte, ließ die Tatsache, dass jeder das Problem bemerkte und es beheben wollte, es wahrscheinlich schnell angehen. Einige von ihnen verwiesen auch auf Diskussionen, die sie bereits hatten, um diesen Prozess zu ändern.

Eine gute Folgefrage könnte lauten: „Wie einfach ist es, Änderungen vorzunehmen?“ oder „Wie stark fühlen Sie sich in der Lage, diese Herausforderung zu lösen?“ Zu viel Veränderung kann schlecht sein, aber es ist auch ein schlechtes Zeichen, wenn es unmöglich ist, Kurskorrekturen vorzunehmen oder Herausforderungen zu begegnen.

Vinnik stellt gerne eine etwas andere Frage: „Was hält dich nachts wach?“ Aber sie sucht nach der gleichen Art von Informationen. „Ich möchte wissen, welchen realen technischen und [organisatorischen] Herausforderungen das Unternehmen gegenübersteht und wie sie über [sie] denken. Ich suche nach Transparenz und wie sie Herausforderungen angehen“, sagt sie. „Wenn sie nur darüber reden, viel zu arbeiten und zu sein.“ Seite aviel ohne über grundlegende Veränderungen nachzudenken, die helfen können, ist es eine rote Fahne. Wenn sie sagen, dass es keine Herausforderungen oder etwas Unbestimmtes gibt, ist es eine gelbe Flagge. „

7. Was ist Ihre Diversity- und Inklusionsstrategie?

Die Tech-Industrie (und insbesondere das Software-Engineering) kämpft wirklich mit Vielfalt und Inklusion – trotz der Tatsache, dass Untersuchungen gezeigt haben, dass Vielfalt die Leistung verbessert.

Paras möchte immer sicherstellen, dass ein Unternehmen nicht nur eine vielfältige Gruppe einstellen möchte, was oft einfacher und offensichtlicher ist, sondern auch daran arbeitet, seine Kultur integrativer zu gestalten. Inklusionsbemühungen können bedeuten, Mitarbeiterressourcengruppen zu unterstützen, Führungskräfte auszubilden und Unternehmenswerte zu fördern, um Unterschiede zu feiern. Paras weist auch darauf hin, dass angesichts der Vielfalt und Inklusion Basisanstrengungen allein nicht ausreichen. Daher ist es wichtig herauszufinden, ob und wie die Führung die Bemühungen unterstützt.

Es würde Ihnen schwer fallen, ein Softwareunternehmen mit perfekten Diversity-Zahlen zu finden, daher suchen Sie nicht unbedingt nach ihnen, um alles herauszufinden. Stattdessen versuchen Sie zu beurteilen, wie sie auf ein langjähriges Problem reagieren, wenn sie sogar zugeben wollen, dass sie eines haben. Ich finde es äußerst aufschlussreich zu sehen, ob ein Unternehmen versucht, etwas Negatives positiv zu beeinflussen, oder ob es zugibt, dass es Arbeit zu tun hat. Ich mag es auch zu sehen, wie viel Gedanken und Mühe sie investiert haben, um es besser zu machen. Versuchen sie kreative Lösungen? Verwenden sie Daten, um ihre Bemühungen zu informieren? Arbeiten sie tatsächlich daran, das Problem zu beheben, oder sind sie selbstgefällig und geben Ausreden? (Lesen Sie hier mehr darüber, wie Sie feststellen können, ob ein Unternehmen auf dem Weg zu Vielfalt und Inklusion ist.)

Die Antwort könnte Ihnen mehr über das Unternehmen erzählen als nur seine D & I-Strategie. Wie ein Unternehmen dieses sehr herausfordernde Problem angeht, kann darauf hinweisen, wie es andere komplizierte Probleme angeht und wie transparent sie tendenziell sind. Stehen sie frontal vor Hindernissen und streben nach ständiger Verbesserung, auch wenn es schwierig ist, oder schieben sie einfach Dinge unter den Teppich?

Bei den meisten dieser Fragen gibt es keine allgemeine richtige oder falsche Antwort. Es geht darum, den Ort zu finden, der für Sie perfekt klingt. Gedeihen Sie mit Beständigkeit oder Chaos? Arbeiten Sie gut unter Druck oder schalten Sie ab? Freust du dich auf die Arbeit mit brandneuen Technologien oder wirst du müde, wenn du darüber nachdenkst?

Fast jedes Unternehmen, mit dem Sie sprechen, hat am Ende jedes Interviews mindestens fünf Minuten Zeit, um Ihre Fragen zu stellen. Nutze diese Zeit mit Bedacht. Ihr Job ist ein großer Teil Ihres Lebens, daher lohnt es sich, sich die Zeit zu nehmen, um sicherzustellen, dass derjenige, den Sie annehmen, am besten zu Ihnen passt.