Von einem Übersetzer: Heute veröffentlichen wir für Sie den
Artikel Priyakty Tatavadkar . Sie ist eine Entwicklerin mit einer kurzen Erfahrung, aber ihr Wissen und ihre Erfahrung haben es ihr ermöglicht, einen Job bei Google zu bekommen (beim zweiten Versuch), um Mitglied des YouTube-Entwicklungsteams zu werden.
Google war für mich von Anfang an eine Traumfirma. Als ich das Interview erfolgreich bestanden hatte, wandten sich viele Bekannte und Freunde an mich mit der Bitte, meine Erfahrungen zu teilen. Im Gespräch mit ihnen habe ich die wichtigsten Dinge für die Mehrheit identifiziert, die ich jetzt in diesem Artikel teile.
Skillbox empfiehlt: Der Python Data Analyst Applied Online-Kurs.
Wir erinnern Sie daran: Für alle Leser von „Habr“ - ein Rabatt von 10.000 Rubel bei der Anmeldung für einen Skillbox-Kurs mit dem Promo-Code „Habr“.
Ich muss sofort sagen, dass ich 2014 bereits versucht habe, einen Job bei Google zu bekommen, aber mit dem Interview kläglich gescheitert bin. Ich habe mehrere Jahre studiert, gearbeitet, neue Erfahrungen und Kenntnisse gesammelt, die mir geholfen haben, ein Angebot zu bekommen.
Motivation
Dreieinhalb Jahre lang arbeitete ich als Startup-Programmierer und arbeitete auch mit einigen Fintech-Unternehmen zusammen. Jedes der Werke gab mir jede Menge Erfahrung, was es am Ende relativ einfach machte, auf Google zu kommen.
Ich habe eines verstanden: Wenn sich eine neue Gelegenheit bietet, werde ich mich auf die bevorstehenden Veränderungen vorbereiten, ohne von der Sekundarstufe abgelenkt zu werden. Das Training hat mir geholfen, einen Job bei Google zu finden, obwohl mir die Wahrscheinlichkeit weniger als 1% betrug. Aber irgendwo in den Tiefen meiner Seele war ich mir sicher, dass es einen Versuch wert war.
Die Kandidaten verstehen oft nicht, wie wichtig es ist, die Merkmale des Unternehmens zu untersuchen, in dem Sie arbeiten möchten. Diesen Punkt zu ignorieren ist es nicht wert.
Wir identifizieren die Phasen der Vorbereitung auf ein Interview
Meine Erfahrung ermöglicht es mir, über fünf wichtige Dinge zu sprechen, die im Vorbereitungsprozess notwendig sind. Programmierung, Design, Sprachkenntnisse, frühere Projekte und Lebensläufe sind die wichtigsten, aber nicht die einzigen Elemente der Vorbereitung.
ProgrammierungAlle Unternehmen, die ich interviewt habe, haben mich durch mindestens zwei Runden rein algorithmischer Fragen geführt, in denen sie Ihnen ein Problem geben, das gelöst werden muss - manchmal müssen Sie dafür Code schreiben.
Beispiel: Schreiben Sie Code, um Werte von 1 bis 10 in der Konsole anzuzeigen (natürlich vereinfache ich).
StrukturJe nach Ebene des Interviews wurden mir unterschiedliche Aufgaben bei der Erstellung eines Entwurfs einer Softwareplattform übertragen. In den meisten Fällen zeigten sie ein abstraktes System, für das eine Struktur entwickelt werden musste.
Beispiel: Wenn Sie eine Website für soziale Netzwerke von Grund auf neu schreiben müssten, wie würden Sie das System entwerfen?Diese Interviewphase war separat, Fragen zum Anwendungsdesign wurden in anderen Phasen gestellt.
SprachprüfungIn den meisten Interviews wird von Ihnen erwartet, dass Sie häufig die Sprache kennen, mit der Sie am bequemsten arbeiten können. In einigen Fällen stellen sie grundlegende Fragen, in anderen gehen sie tief in die Essenz ein.
Beispiel: Was ist Vererbung in Java?Vorherige Projekte / ZusammenfassungDies ist eine der Phasen, auf die ich mich manchmal vergessen habe, und das vergebens. Bei Interviews geht es nicht nur um Programmierung und Anwendungsdesign. Es ist auch ein Versuch herauszufinden, wie gut Sie als Teamplayer sind. Sie müssen angeben, wie Sie mit anderen Mitgliedern des letzten Teams zusammengearbeitet haben. Die Fragen hier können sehr spezifisch sein.
Beispiel: Erzählen Sie uns etwas über das Projekt, auf das Sie stolz sind.UnternehmensinformationenWie ich bereits sagte, wird die Phase der Vorbereitung auf ein Vorstellungsgespräch, in der die Details des Unternehmens, in dem Sie arbeiten, untersucht werden, von den Bewerbern häufig ignoriert. Ihnen können direkte und indirekte Fragen zum Unternehmen selbst gestellt werden - einem potenziellen Arbeitgeber.
Beispiel: Warum möchten Sie in XYZ arbeiten?
Vorbereitung des Interviews
Ich habe mich sorgfältig auf das Interview vorbereitet und Informationen aus verschiedenen Quellen erhalten. Nachfolgend sind einige davon aufgeführt.
Udemy KurseIch erinnere mich an den Beginn der Vorbereitung: Ich habe drei Kurse von Udemy erworben. Sie haben mir bei grundlegenden Dingen geholfen. Übrigens habe ich keinen von ihnen beendet, aber ich habe den größten Teil jedes Kurses durchlaufen. Ich habe mich für diese Kurse entschieden, weil ich verstanden habe, dass Sie sich mit dem Videoformat schneller als mit dem Text vorbereiten können. Das Beste ist, wenn jemand schwierige Orte erklärt, die Sie nicht selbst herausfinden können. Die Kurse erinnerten daran, wie Übungen, die Teil der Vorlesungen waren, gelöst wurden.
LeetCode Premium KurseIch habe ungefähr 70 Dollar für diese Kurse bezahlt und sie waren jeden investierten Cent wert. Sie halfen mir, das Programmieren zu üben und komplexe technische Dinge zu lernen, die für Training und Arbeit wichtig sind.
YouTube-VideoYouTube war ein Freund, der den Vorbereitungsprozess unterstützte. Nicht nur im Studium, sondern auch in der Pause vom Studium. Die Idee war, nach Videos zu suchen, um herauszufinden, was mir nicht gegeben wurde. Es war nicht nötig, einen Kurs zu belegen. Sehen Sie sich einfach ein kurzes Video mit einer Erklärung an. Oft habe ich mir einige Videos angesehen und bin dabei auf andere gestoßen, nicht weniger nützlich.
Ich konnte mir nicht einmal vorstellen, dass ich in zwei Monaten im YT-Team anfangen würde! Wunder geschehen.
Andere RessourcenIch empfehle auch Ressourcen von Gayle Laakmann McDowell:
Das Coding-Interview knackenSchrittweise Erklärung des
Interviews in Form eines Diagramms .
Vorbereitung auf die Phase des Systemdesigns:
Im Tech-Kurs eingestelltInterview by Design, Wiedergabeliste von Ramon Lopez.
Einen Monat vor dem Interview begann ich mit der intensiven Vorbereitung auf die Programmierphase und beendete die Studie mit der Lösung von 60 bis 70 Aufgaben, hauptsächlich die, die bei Interviews am häufigsten gestellt werden.
Vorbereitung auf die "Programmierer" -Stufe von einem Monat Dauer
Ich habe bereits gesagt, wie mir die LeetCode-Kurse geholfen haben. Sie lernen, auf ihnen zu programmieren, Probleme zu lösen, die bei Interviews am häufigsten auftreten, und die Essenz der Fragen zu enthüllen, die in einem Interview mit dem Bewerber gestellt werden. Fairerweise werde ich sagen, dass mir keine dieser Fragen persönlich gestellt wurde. Außerdem kommt das, was sie mir beim Interview gestellt haben, überhaupt nicht im Netzwerk vor. Ich stelle jedoch fest, dass das Konzept der Fragen selbst dem im Internet oder in Kursen sehr ähnlich ist. All dies hat mit Problemlösung, Musteridentifikation und anderen Problemen zu tun.
Während der Vorbereitung löste ich täglich zwei oder mehr Probleme. Probleme können variieren, ihre Lösung dauert von einer halben Stunde bis zu einer Stunde. Es hängt alles von der Komplexität der Frage ab. Das Niveau der Kurse wurde in einfache, mittlere, komplexe und unternehmensspezifische Kurse unterteilt. Selbst Aufgaben auf mittlerer Ebene waren für mich ziemlich schwierig. Ihre Entscheidung dauerte eine Stunde. Mein Rat ist, wenn Sie in einer Stunde keine Lösung finden konnten, schauen Sie einfach zurück.
Im Allgemeinen konzentrierte ich mich auf die Lösung leichter und mittlerer Probleme. Ich entschied mich nicht mehr als zehn schwer. An schwierigen Orten kam YouTube zur Rettung, ich suchte dort nach einer Lösung.
Ich habe auch versucht, Probleme aus dem unternehmensspezifischen Bereich zu lösen. Und hier habe ich einen Fehler gemacht und nur mit Aufgaben von Google gearbeitet. Ich habe mit ihnen angefangen und nicht mit den Fragen und Aufgaben des Abschnitts „einfach“. Sie waren extrem komplex, ich konnte es nicht bewältigen. Infolgedessen war ich verärgert, meine Motivation nahm ab und für eine Weile tat ich einfach nichts. Tipp - Beginnen Sie mit einfachen Fragen, gehen Sie zu Aufgaben mit mittlerem Schwierigkeitsgrad über und fahren Sie erst dann mit bestimmten Übungen fort.
Allgemeine Tipps
Stress dich nicht. Während der Vorbereitung lebte ich ein erfülltes Leben, arbeitete mit der gleichen Effizienz in der vorherigen Firma und war nicht zu nervös.
Weisen Sie täglich eine kleine Menge Zeit zu, bereiten Sie sich jedoch ein bis zwei Monate lang vor, wobei Sie die zugewiesene Zeit vollständig nutzen.
Wochenenden sind unsere besten Freunde! Verwenden Sie sie in vollen Zügen. Ich verbrachte zwei Tage mit der Vorbereitung, nachdem ich viele Kurse gleichzeitig bestanden und einige schwierige Probleme gelöst hatte. Dieses Wochenende gab mir einen Anstoß, der in der Zukunft half.
HR ist auch dein Freund. Zögern Sie nicht, vor dem Interview nach dem Format des Interviews, den Materialien, die es wert sind, verwendet zu werden, und allgemeinen Tipps zu fragen.
Beginnen Sie mit allgemeinen Schulungen, einschließlich Kursen, YouTube und Lesen von Artikeln. Bestimmte Materialien verlassen zum Nachtisch.
Codieren Sie nicht nur. Lösen Sie andere Aufgaben, einschließlich des Systemdesigns. Sehen Sie sich thematische Videos an. Genieße den Lernprozess.
Beim Interview können Sie nach einem Laptop fragen. Ich habe das während meines Interviews gemacht. Nur Entscheidungen an die Tafel zu schreiben, ist irgendwie komisch. Im Allgemeinen ist es besser, den Fortschritt der Lösung auf Papier / Karton darzustellen, und die praktische Implementierung erfolgt bereits auf dem Computer.
Suchen Sie im Internet nach thematischen Informationen und tun Sie dies von Zeit zu Zeit.
Denken Sie an das Worst-Case-Szenario. Ich habe mir eine Situation vorgestellt, in der ich keinen Job bei Google bekommen kann. Im Prinzip passiert in diesem Fall nichts Schlimmes, Sie können in der vorherigen Firma arbeiten oder versuchen, ein Interview in einer anderen zu bekommen. Es beruhigte mich und erleichterte das Leben.
Bleib ruhig und codiere weiter .
Skillbox empfiehlt: