Interview-Wiki – Leitfaden für Software-Ingenieure

Nov 27 2022
Im Allgemeinen hat ein Software Engineer-Interview 4 Arten von Runden: - Technische Runde - High Level Design (HLD)-Runde - Low Level Design (LLD)-Runde - Verhaltensrunde Die Anzahl der Runden für jede Rolle hängt vom Unternehmen ab. Zum Beispiel hat Amazon normalerweise 4 Runden, in denen sich die ersten 2 Runden auf Datenstruktur (DS) und Algorithmen beziehen, und der Rest wären Designrunden, wenn es um die SDE2+-Rolle geht.

Im Allgemeinen hat ein Software Engineer Interview 4 Arten von Runden:-

- Technische Runde

- High Level Design (HLD) Runde

- Low-Level-Design (LLD) rund

- Verhaltensrunde

Die Anzahl der Runden für jede Rolle würde vom Unternehmen abhängen. Zum Beispiel hat Amazon normalerweise 4 Runden, in denen sich die ersten 2 Runden auf Datenstruktur (DS) und Algorithmen beziehen, und der Rest wären Designrunden, wenn es um die SDE2+-Rolle geht. Für sie gibt es keine separate Verhaltensrunde, sondern sie stellen in jeder Runde ein paar Führungsfragen.

Jede Runde ist wichtig und wir sollten uns für jede Runde Zeit nehmen. Normalerweise haben Studienanfänger, die das College verlassen haben, keine HLD- und LLD-Runden. Aber sie können stattdessen eine OO-Runde (Objektorientiert) erwarten, in der sie Ihre objektorientierten Fähigkeiten testen.

Hier in diesem Wiki werde ich alle Inhalte teilen, auf die ich während meiner Interviewvorbereitung gestoßen bin. Ich würde Kurse, Bücher, Blogs und GitHub-Repos teilen, die für mich während meiner Interviewvorbereitung sehr nützlich waren. Dies bedeutet nicht, dass Sie bei Ihren Vorstellungsgesprächen dasselbe befolgen müssen, da jeder seinen eigenen Lernstil hat. Aber Sie können dieses Wiki als Leitfaden oder Referenz für die Vorbereitung verwenden. Am Ende bist du es, der an dem Vorstellungsgespräch teilnimmt.

Ich werde jede Runde einzeln abdecken. Beginnen wir mit der technischen Runde.

Technische Runde

Eine der wichtigsten Runden für Neueinsteiger und Erfahrene. Hier testen sie Ihr Wissen über Datenstruktur und Algorithmen. Diese Runden testen nicht Ihr Wissen über fortgeschrittene Algorithmen, die existieren, um komplexe Probleme zu lösen. Aber Sie sollten zumindest die gängigsten kennen. Ich habe gesehen, wie Leute sehr seltsame und unsinnige Probleme bekommen haben, die nur mit einigen einzigartigen Algorithmen gelöst werden können. Aber das ist sehr selten. Ich werde nicht vorschlagen, dort Zeit zu verbringen, da wir der grundlegenden Wahrscheinlichkeit vertrauen sollten, dass wir uns ihm stellen. Wenn Sie das allgemeine Fragemuster für Vorstellungsgespräche sehen möchten, können Sie die folgende Website besuchen (https://algo.monster/problems/stats)

Die Dinge, die Sie nicht überspringen sollten:

Datenstruktur,

Array, Linked List, Stack, Queue, Heap, Map, Set, Trie, Baum, BST

Algorithmen

Sortieren, dynamisches Programmieren, Greedy, Suchen, Teilen und Erobern und Graphalgorithmen.

Design auf hohem Niveau

Es testet Ihr Wissen über den Entwurf der Gesamtarchitektur eines Systems. Es enthält eine Beschreibung der Systemarchitektur, des Datenbankdesigns und eine kurze Beschreibung von Systemen, Diensten, Plattformen und Beziehungen zwischen Modulen. Früher waren Fragen sehr vage wie Design WhatsApp, Design Redbus usw. Hier müssen Sie je nach Interviewer in weniger als 30–45 Minuten ein Design entwickeln. Hier erwartet der Interviewer nicht, dass Sie codieren, aber Sie sollten in der Lage sein, die Datenbanken, API usw. zu entwerfen, wenn Sie danach gefragt werden.

Low-Level-Design

Es beschreibt eine detaillierte Beschreibung jedes Moduls, was bedeutet, dass es die tatsächliche Logik für jede Systemkomponente enthält und tief in die Spezifikation jedes Moduls eingeht. Hier müssen Sie die Klassen, Schnittstellen usw. codieren. Außerdem sollten Sie sehr gute Kenntnisse in Design Patterns haben. Wenn Sie eine objektorientierte Sprache beherrschen, wäre dies ein Pluspunkt.

Verhaltensrunden

Ich glaube, hier brauche ich keine Einführung zu geben. Dies ist eine der Runden, die die Leute früher übersprungen haben, aber meiner Meinung nach mindestens einen Tag für die Vorbereitung aufwenden. Die meisten Interviewer interessieren sich tatsächlich dafür, was Sie in dieser Runde sagen. Amazon, Google usw. nehmen diese Runden wirklich sehr ernst und Sie sollten sich bewusst sein, welche Fragen gestellt werden und welche Strategie verfolgt werden sollte, um diese Fragen zu beantworten.

Ressourcen:

Technische Runde

1.https://www.geeksforgeeks.org/top-algorithms-and-data-structures-for-competitive-programming/(Am wichtigsten)

2.https://takeuforward.org/interviews/strivers-sde-sheet-top-coding-interview-problems/(Probleme)

3.https://www.youtube.com/user/purpongie(Lernprogramm)

4.https://cses.fi/problemset/list(Probleme)

5.https://github.com/donnemartin/interactive-coding-challenges(Lernen)

6.https://leetcode.com/discuss/interview-question/2001789/Collections-of-Important-String-questions-Pattern(Probleme)

7.https://github.com/jwasham/coding-interview-university(Lernen)

8.https://leetcode.com/discuss/interview-question/2069641/the-only-lists-you-need-for-your-interview-preparation(Lernen)

HLD-Runde

1.https://www.youtube.com/c/SystemDesignInterview/videos(Lernprogramm)

2.https://www.youtube.com/watch?v=0163cssUxLA&list=PLA8lYuzFlBqAy6dkZHj5VxUAaqr4vwrka(Lernprogramm)

3.https://www.youtube.com/watch?v=xpDnVSmNFX0&list=PLMCXHnjXnTnvo6alSjVkgxV-VH6EPyvoX(Lernprogramm)

4.https://blog.bytebytego.com/?utm_source=linkedin_post(Blog)

5.https://leetcode.com/discuss/general-discussion/125038/system-design-interview-prep(Lernen)

6.https://www.educative.io/courses/grokking-modern-system-design-interview-for-engineers-managers(Bezahlter Kurs)

7.https://github.com/donnemartin/system-design-primer(Lernen)

8.https://github.com/checkcheckzz/system-design-interview(Lernen)

LLD-Runde

1.https://workat.tech/machine-coding/practice(Maschinencodierungsprobleme)

2.https://www.youtube.com/playlist?list=PL564gOx0bCLouDCUMtmj6hMEu1JS7QYEr(Lernprogramm)

3.https://github.com/prasadgujar/low-level-design-primer/blob/master/questions.md(Probleme)

4.https://betterprogramming.pub/how-to-ace-the-low-level-design-interview-3f1be6401070(blog)

Verhaltensrunde

1.https://www.youtube.com/watch?v=RzlUQCy84rQ(Amazon-Leadership-Prinzip)

2.https://leetcode.com/discuss/interview-question/1729926/a-guide-for-behavioral-round(Handbuch)

3.https://drive.google.com/file/d/1sb6Kll5enH3H70uaNwnjWPkN9pNtSu9-/view(pdf)

4.https://igotanoffer.com/blogs/product-manager/behavioral-interview-questions-tech-companies#techniques(Facebook-Fragen)

5.https://leetcode.com/discuss/interview-question/437082/Amazon-Behavioral-questions-or-Leadership-Principles-or-LP(Amazon LP-Fragen)

6.https://www.techinterviewhandbook.org/behavioral-interview-questions/(Fragen)

7.https://www.principle.cards/(Teste dich selbst)

Für die neuesten Updates von Interview-Wiki können Sie meinem GitHub-Repo folgenhttps://github.com/aashan007/Interview-wiki