Ich schrieb diese Geschichte mit Tränen: lehne die Überschrift ab, gib Huawei auf und bekomme endlich ein Angebot mit 6-seitigem Byte-Beating! Das Jahresgehalt beträgt 70w +!

Vorwort

Lassen Sie mich zuerst über meine Situation sprechen. Im August wurde ich vom Ausbilder darüber informiert, dass ich nicht über die Qualifikationen für exzellente Forschung verfügte. Ich begann mich auf das Bestehen der 819-Prüfung vorzubereiten. Im September, der groß angelegten Herbstrekrutierung von Huawei, gingen die ersten Rekrutierungsangebote ein, die jedoch abgelehnt wurden. Ich bekam den Platin-Code und entschied mich, die Aufnahmeprüfung für Doktoranden abzubrechen, um mich auf das Byte-Interview vorzubereiten. Ich bereitete mich auf das Interview am 10.13 vor. Nach drei Runden erhielt ich den Angebotsanruf am 10.19. Die Rekrutierung im Herbst endete. Während dieser Zeit erhielt ich das Angebot von 360 und behielt, aber ich lehnte ab. Weil mein Ziel klar ist! ByteDance, geben Sie Interviews nicht auf. Tencent und Schlagzeilen werden zwar gut bezahlt, aber sie sind jung und frivol. Daher müssen sie sich 9 Seiten stellen, bevor sie das ByteDance-Angebot erhalten!
Ich schrieb diese Geschichte mit Tränen: lehne die Überschrift ab, gib Huawei auf und bekomme endlich ein Angebot mit 6-seitigem Byte-Beating!  Das Jahresgehalt beträgt 70w +!
Ich schrieb diese Geschichte mit Tränen: lehne die Überschrift ab, gib Huawei auf und bekomme endlich ein Angebot mit 6-seitigem Byte-Beating!  Das Jahresgehalt beträgt 70w +!

Dieser Artikel wird über meine 9-seitige Byte-Schlag-Interview-Erfahrung sprechen!

Meine ByteDance schwierige Interviewreise

Eine Seite (~ 45min)

1. Stellen Sie das Projekt vor , sprechen Sie über den Arbeitsinhalt und die Gedanken des Praktikums (~ 10min)

2. Was ist ein Speicherverlust, was sind die Speicherverlustszenarien in Android und was sind die Gründe?

3. Was sind der JVM-GC-Prozess und der GC- Algorithmus ?

4. Das Konzept von Prozess und Thread, wie man Multithreading in Android realisiert? (Thread-Handler AsyncTask IntentService usw.)

5. Das Prinzip und die Verwendung von Handler

6. Wie ist der Handler an den Thread (Looper) gebunden und warum ist Looper.loop () als Endlosschleife konzipiert?

7. Was ist der Unterschied zwischen mehreren internen Java-Klassen?

8. Aktivitätslebenszyklus und Startmodus

9. Schreiben des Titels: Die rechte Ansicht des Binärbaums (die Durchquerung der Ebenenfolge ist ausreichend)

Eine Seite ist relativ kurz und die gestellten Fragen sind relativ einfach. Nach etwa 30 Minuten beginnen die beiden Seiten

Zwei Seiten (~ 1h30min)

1. Einleitung

2. Stellen Sie das Projekt vor . Warum müssen Sie Android selbst lernen (~ 5 Minuten)?

3. Wie realisiert Android Multiprozesse und wie sieht das Anwendungsszenario aus (schlechte Antwort)

4. Verstehst du den IPC-Mechanismus (Binder) von Android (die Antwort ist nicht gut)?

5. So implementieren Sie einen Stapel (FILO) mit zwei Warteschlangen (FIFO)

6. Der Unterschied zwischen HashMap und HashTable, das Prinzip und die Implementierung von HashMap, dem Algorithmus von hash ()

7. Wenn Sie Ihre eigene Hash-Berechnung entwerfen, wie und warum (die Primzahl der Antwort ist der Rest)

8. String hashCode () und Object hashCode ()

7. Das Konzept und die Beziehung von virtuellem Speicher und physischem Speicher, der Planungsalgorithmus für Speicher-Paging

8. So implementieren Sie den LRU-Cache (siehe Leetcode T146)

9. Kann ich selbst eine java.lang.Object-Klasse schreiben und welche wird vom System geladen?

10. Implementierung von Generika in Java

11. Verfügen Sie gemeinsam kennen Sortieralgorithmen , Schreib schnelle Art von Hand

12. Die Methode zum Sperren in Java, das Prinzip des synchronisierten Schlüsselworts, was sind die Implementierungen von pessimistischem Sperren und optimistischem Sperren

13. Deadlock-Bedingungen und -Lösungen, sprechen Sie über den Algorithmus der Banker

14. Der Drei-Wege-Handschlag von TCP winkte viermal, warum viermal

15. TCP Flusssteuerungsalgorithmus (Schiebefenster), Überlastungssteuerungsalgorithmus

16. So lösen Sie das Problem mit mehreren Instanzen, das dadurch verursacht wird, dass Benutzer häufig auf eine neue Aktivität klicken (Aktivitätsstartmodus)

17. Wie man beurteilt, ob sich zwei azyklische, einfach verknüpfte Listen überschneiden

18. Titel schreiben: leetcode 445

19. Rhetorische Frage

Das Volumen der zweitseitigen Fragen ist sehr groß und konzentriert sich auf Java / OS / Algorithmen . Es sind jedoch keine besonders schwierigen Fragen zu beantworten. Wenn Sie sich sorgfältig vorbereiten, können die meisten beantwortet werden. Der Interviewer war auch sehr freundlich und gab viele Anleitungen und Tipps.

Aufgrund des Zeitpunkts des dreiseitigen Interviewers die drei Seiten des Termins zwei Tage später

Drei Seiten (~ 45min)

1. Einleitung

2. Erzählen Sie mir von der Arbeit des Praktikums. Haben Sie es selbst gemacht? Auf welche Schwierigkeiten sind Sie gestoßen? Was waren die Ergebnisse?

3. Wie implementiert RecyclerView das Zwischenspeichern von Elementen? Was ist der Unterschied zu ListView ( ich wurde gefragt, weil das Element verwendet wird) ?

4. Schreiben Sie den Titel: leetcode 1233

5. Entwurfsfrage: WeChat-Kontaktlistenfunktion

(1) Entwerfen Sie eine API zum Hinzufügen von Kontakten (Antwort in Bezug auf mögliche Wege, Datenformulare und Schnittstellenparameter).

(2) Implementieren der Benutzeroberfläche der Kontaktliste (RecyclerView für Antworten)

(3) Realisieren der Schnellpositionierungsfunktion von AZ-Initialen

6. Ist es ein autodidaktisches Android? Warum haben Sie diese Richtung gewählt? Haben Sie Erfahrung für Schüler, die sich auch selbst unterrichten möchten?

7. Woher kommst du und warum willst du in Shanghai arbeiten?

8. Rhetorische Frage

Es gibt nicht viele dreiseitige Fragen, aber da die meisten Fragen keine Standardantworten haben, ist die Schwierigkeit tatsächlich höher als eine oder zwei

Vier Seiten (1 Stunde 14 Minuten)

Ich hauptsächlich über Java und virtuellen Maschinen gefragt, und ich fragte ein wenig über android
1. Einführung in das Praktikum Projekt und Antworten auf Fragen
2. Der Unterschied zwischen Reflexion und Proxy, dynamische Proxy, statische Proxy, der Unterschied zwischen den beiden, und das UML - Diagramm der Proxy - Modus
3. Wörter Code sparende Technologie
4. Elterliche Delegation virtueller Maschinen und Vorteile
5. Die Rolle des Stapels virtueller Maschinen und unter welchen Umständen wird er an Stack Overflow gesendet.
6. Wer kann GCRoot ausführen, warum ist die Zählmethode nicht so gut wie die Erreichbarkeit?
7. Warum möchten Sie neue Schüler aufteilen ? Unterscheiden zwischen Generationen und alten Generationen
8. Der GC- Algorithmus führt
den Prozess des 9. Klassenladens ein, was im Methodenbereich gespeichert ist, welche Typinformationen enthalten sind und wie beurteilt wird, ob zwei Klassen gleich sind.
10. Sprechen Sie über die put-Methode von HashMap, über das Erweitern, über eine Klasse als HashMap, über die zu implementierenden Methoden, über den Unterschied und die Verbindung zwischen equals und hashCode.
11. Sprechen Sie über den Nachrichtenmechanismus, über ThreadLoacal und über Handler-Verarbeitungsinformationen Gibt es eine andere Möglichkeit (außer handleMessage), gibt es eine Längenbeschränkung für MessageQueue und wie viele Nachrichten in Android?
12. Ein Lebenszyklusprozess des Sprunges von Aktivität A zu Aktivität B 13. Aktivität
A (Standardmodus) springt zu B (Singleton-Modus), dann springt B zu A, und was passiert, wenn sie zurückkehrt?
14. Der Unterschied zwischen InVisible und Gone, der Unterschied zwischen Gone und ViewStub
15. Das erste Zeichen in der Zeichenfolge

Fünf Seiten (34 Punkte)

Computernetzwerkbezogen
1. Die siebenschichtige osi-Architektur, was macht die physische Schicht?
2. Eine Reihe von Ereignissen nach Eingabe der URL.
3. Welches Protokoll wird in
DNS verwendet und wie wird es ausgeführt? 4. TCP-Drei-Wege-Handshake und Flusskontrolle
5. Was ist in der HTTP - Nachricht ist
6. Was ist der Unterschied zwischen dem , HTTP und HTTPS, und was ist der Verschlüsselungsalgorithmus
7. Was sind die Antwortcodes von HTTP?
8. Der Unterschied zwischen get und post
9. Zwei geordnete Arrays finden den Median

Sechs Seiten (50 Minuten)

In eingehenden android Aspekte und Praktikumserfahrung
1. Praktikum Projekt bezogene (einschließlich einiger spezifischer Implementierungen und einige wichtige Fragen)
2. Die Rolle der
Layoutmanager 3. Was das Verständnis der Verwendung von RecyclerView ist, wie ein Doppel Wasserfall zu implementieren
4. Wie entwerfen ein SDK (Viele detaillierte Fragen)
5. Karten spielen, die Wahrscheinlichkeit, fünf Karten zu ziehen, ist ein Flush, und die Wahrscheinlichkeit, fünf Karten zu ziehen, ist eine gerade
6. Das Verständnis, die Vorteile und die Verwendung von RN und Redux sowie der Anteil von Android und RN in der Arbeit
7. Die Vorteile des Singleton-Modus: Wann sollten Sie Singleton nicht verwenden? 8. Verstehen Sie
die interne Implementierung von SP? So erreichen Sie die Serialisierung
9. Verstehen Sie die Injektion?

Bytedance, ich habe insgesamt dreimal interviewt, insgesamt sechs Seiten, und endlich ein Angebot bekommen!

Im letzten Interview mit ByteDance war einer der drei Interviewer mein Anführer. Er fragte mich damals, was Sie tun möchten, wenn Sie einen Job erhalten, der nur in ein oder zwei Wochen erledigt werden kann. Ich sagte, besprechen Sie zuerst mit Ihnen und äußern Sie Ihre Ansichten. Wenn Sie darauf bestehen, für mich zu arrangieren, werde ich Überstunden machen. . . Es kann ordentlich sein. . . . Bis es fertig ist. . . . Er kicherte und lachte. . . Er stellte mir diese Frage und ich wusste, dass er der Anführer war. Und ich denke, dieses Problem hat mich vielleicht gerettet. Um ehrlich zu sein, bin ich ein relativ unkomplizierter Shandong-Typ. Ich denke, Überstunden sind nichts. Der Anführer mag mich vielleicht auch unkomplizierter, also habe ich es ausgenutzt. Ich bin meinem Charakter sehr dankbar, dass er mir eine Chance gegeben hat.

Eine andere Frage ist, warum wir Huawei abgelehnt haben. Tatsächlich ist das Gehalt von Huawei ziemlich gut. Abgesehen von der Stunde fühle ich mich ein wenig herabgeschaut. Der Hauptgrund ist, dass das Interview zu wässrig ist, was mir das Gefühl gibt, dass die Anzahl der Personen, die eintreten, nicht sehr hoch ist und ich dann nicht gehen möchte. .... Ich habe immer geglaubt, dass wir nur in einem Umfeld auf hoher Ebene ein größeres Wachstum erzielen können. Natürlich ist Huawei immer noch sehr stark und ich hoffe wirklich, in ein paar Jahren zu Huawei zu springen. . . .

Ende

Es gibt keine Abkürzung, um Ihr Leben zu verändern. Sie müssen diesen Weg selbst gehen. Nur tiefes Denken, ständige Reflexion und Zusammenfassung, die Aufrechterhaltung der Begeisterung für das Lernen und der schrittweise Aufbau Ihres eigenen vollständigen Wissenssystems sind die ultimativen Wege, um zu gewinnen. Es ist auch die Mission, die Programmierer übernehmen sollten.

Die oben genannten erweiterten Interviewfragen und Systemlernmaterialien können kostenlos an alle weitergegeben werden. Freunde, die die Vollversion benötigen, klicken hier, um den gesamten Inhalt anzuzeigen .

Ich denke du magst

Origin blog.51cto.com/14971211/2542826
Empfohlen
Rangfolge