JavaRush /Java-Blog /Random-DE /Meine Erfolgsgeschichte

Meine Erfolgsgeschichte

Veröffentlicht in der Gruppe Random-DE
  1. Hallo zusammen, ich schreibe von meinem ersten Arbeitsplatz aus (genauer gesagt vom Ort meines ersten bezahlten Praktikums als Junior-Java-Entwickler), bevor der Arbeitstag beginnt.
  2. Meine Erfolgsgeschichte - 1
  3. Ich bin 39 (!) und habe als Hobby mit dem Programmieren begonnen, während ich eine Pause von der Arbeit hatte, etwas Geld hatte, mich um ein kürzlich geborenes Kind kümmerte, zu meiner Familie nach Moskau zurückkehrte und ein paar andere Dinge. Zuvor war er als Finanzier tätig und beteiligte sich maßgeblich an der Implementierung von Buchhaltungssystemen auf verschiedenen 1Сах.

  4. Zuerst habe ich versucht, selbst mit dem Programmieren zu beginnen und sogar mit Kotlin zu beginnen (die Sprache selbst und diejenigen, die sie entwickelt haben, gefielen mir sehr gut – JetBrains). Aber schnell, wahrscheinlich innerhalb einer Woche, wurde mir klar, dass es ohne Java in Kotlin nichts zu tun gibt und dass eine Art Kurs erforderlich ist; das Graben auf eigene Faust ist sehr ineffektiv. Ich habe, ich weiß nicht mehr wie, JavaRush gefunden, ich habe mich am 30. Juni darauf registriert (ich habe es mir jetzt per E-Mail angesehen). Bereits am 5. Juli habe ich ein Abonnement gekauft (in diesen 5 Tagen habe ich die ersten 10 Level abgeschlossen, zwei Level pro Tag). Meiner Meinung nach habe ich in 3 Monaten 25 oder etwas mehr Level absolviert (komplett, im Detail herumgestöbert, einen kleinen Teil der Lösungen heruntergeladen, sie aber auf jeden Fall im Detail verstanden, wirklich).

    Ich erinnere mich an die große Aufregung, die ich verspürte, als ich endlich mathematische Ausdrücke analysierte. Diese Aufgabe war ein großer Sprung, ein Durchbruch in meinem Verständnis als Programmierer.


  5. Ich habe mich dafür entschieden, zuerst die Sammlungen und dann den Parallelitätsteil durchzugehen. Ich schaute mir den Inhalt an und kam zu dem Schluss, dass es interessanter und nützlicher sei, sich mit Sammlungen zu befassen. Ich habe meiner Meinung nach etwa zwei Monate gebraucht, um weitere 10 Level zu absolvieren (bis zum 35. irgendwo).

  6. Irgendwann mitten in der Parallelität wurde klar, dass es fast sinnlos war, weiter fertig zu werden. Es wurde interessanter, Probleme im Hilfebereich zu analysieren (das war nützlich für mich – ich lernte, den Code anderer Leute zu analysieren und mein Wissen zu strukturieren) als Übungen zu machen. Dann habe ich mir zum Ziel gesetzt, ein Webprojekt mit Spring + Hibernate + Mayesquel + einer Art Template-Engine zu erstellen (am Ende habe ich es mit Thymeleaf gemacht). Ich habe die restlichen Level nur geöffnet, um die leckersten Aufgaben zu entdecken.

    Hätte es in diesem Moment ein Praktikum gegeben, wäre es toll gewesen, aber für das, das gerade stattfand, war es schon zu spät und für das nächste war es zu früh.


  7. Infolgedessen habe ich anderthalb Monate damit verbracht, das alles aufzuschlüsseln (die Person im Videobeispiel hat das Gleiche in wahrscheinlich 50 Minuten getan, wenn überhaupt). Ich habe insgesamt zwei Test-Webdienste erstellt. Das eine ist eine reine Wiederholung des Inhalts des Videos (die Standard-Bücherliste ist analog zu einer Prüfungsaufgabe für ein Praktikum). Die zweite ähnelt mehr oder weniger der eigentlichen Aufgabe, dem Backend-Teil der Website zur Berechnung der Kosten für abgehängte Decken mit einem Rest-Controller (nach dem Vorbild der tatsächlichen Bedürfnisse von Freunden). Und zwar auf Spring-Boot und nicht auf Naked Spring. Im zweiten habe ich zum Spaß sogar Kurse in Kotlin eingefügt (im Allgemeinen kann ich Kotlin wärmstens empfehlen, ich werde auf jeden Fall selbst weiter graben).

  8. Nachdem ich im Grunde genommen einen Webdienst von Grund auf erstellt hatte (wir werden nichts darüber sagen, dass er keine Autorisierung, keinen Transaktionsmanager, keine normalen Tests des Webteils usw. hatte), wurde klar, dass dies notwendig war Legen Sie einen Lebenslauf fest und suchen Sie einen Job im Juni. Zu diesem Zeitpunkt begann ich zu verstehen, dass mir das Programmieren wirklich Spaß machte und dass Programmierer wirklich gebraucht wurden. Dann (Mitte Januar, nach den Ferien) habe ich schließlich einen kurzen Lebenslauf auf Englisch geschrieben, in dem ich meine bisherigen Erfahrungen vollständig gestrichen habe (ich habe nur eine kurze Beschreibung in einem Absatz hinterlassen) und ihn bei NN eingereicht.

  9. Was begann, ist nur ein Absatz. Ich hatte keine Zeit, eine Anfrage an irgendjemanden zu senden, ich hatte bereits 4 Angebote von Unternehmen für ein Vorstellungsgespräch und ein paar weitere Briefe von der Personalabteilung mit Angeboten erhalten, verschiedene Jobs in Betracht zu ziehen (aber diese paar Briefe sind nicht auf dem Niveau, z mittlere Leute). Ich verstehe nicht, warum das passiert ist, ich glaube, in diesem Moment gab es einen starken Anstieg der Bestellungen von Sber (2 von vier - Sber selbst, das im Allgemeinen jeden einlädt, der einen Lebenslauf gepostet hat, und seinen Auftragnehmer) zu einem Vorstellungsgespräch. Außerdem sah mein Lebenslauf wahrscheinlich gut aus.

  10. Das erste Interview (Sbertech) war brillant. Ich habe ihm das Wesentliche und die Grundlagen sehr gut beigebracht, der Interviewer sagte, dass die Sozialversicherung einfach eine Bombe sei und ich auf jeden Fall einen Job finden werde, auch wenn nicht bei ihnen. Aber die zweite (am Telefon) war einfach nur schade. Ich war völlig verloren und kannte fast alle Fragen oder konnte eine vernünftige Antwort geben, wie ich mich später erinnerte. Jetzt gibt es bei Sbertech zwei Interviewer, einer denkt, dass ich nicht schlecht bin, der zweite, dass ich ein klinischer Idiot bin. Es war eine gute Lektion, Vorstellungsgespräche ernst zu nehmen, ansonsten war ich nach den Angeboten und dem ersten Vorstellungsgespräch ein wenig stolz.

  11. Interessant ist, dass es bei 3 Vorstellungsgesprächen (einschließlich des jetzigen Ortes) praktisch kein technisches Vorstellungsgespräch gab – sie sahen rein menschlich aus, wie ich war, obwohl ich natürlich gut vorbereitet war. Ich erinnere mich besonders an die Firma, die mich eingeladen hat, nur weil ich über 35 Jahre alt war. Sie haben eine ganz einzigartige Atmosphäre. Als ich ihren Entwicklungsmanager (viel älter als ich, wirklich altmodisch) fragte, welche IDE sie verwenden (Intellij oder Eclipse, in diesem Teil gibt es eine Art Richtlinie), verstand er es zunächst nicht einmal und antwortete dann: „Oh , ein Texteditor ... Ja, ich benutze sie nicht, so schreibe ich Code. Aber Sie können alles verwenden, kein Problem.“ Und er machte definitiv keine Witze. Ich war gelinde gesagt überrascht.

  12. Ein paar Wochen später erhielt ich einen Anruf von Sbertech (genau nach dem ersten Interview, es gibt dort ein Meer von Abteilungen, jede rekrutiert sich selbst) mit dem Angebot, für ca. zu arbeiten. 1,1 Tausend Dollar pro Monat, unter Berücksichtigung des Jahresbonus. Ich sagte ok, sie begannen mit der Bearbeitung des Angebots. Dieser Prozess dauert ziemlich lange, ich habe mir noch andere Werke angesehen. In diesem Moment stieß ich auf Javarash auf eine Anzeige über die Rekrutierung von Praktikanten für die Smart-Unternehmensgruppe. Ich schrieb, dass ich gerne chatten würde, man weiß ja nie, ich ging fast sofort zu einem Vorstellungsgespräch. Tim Lead stellte praktisch keine Fragen zur technischen Seite (obwohl ich selbst mein Niveau ganz angemessen und ohne Blödsinn beschrieb) und sagte, dass er bereit sei, mich in einem bezahlten Praktikum auszuprobieren. Ich stimmte zu, weil Sbertech mich ein wenig störte (es ist klar, dass ich dorthin gegangen wäre, wenn es keine Alternativen gäbe), außerdem gefielen mir die Atmosphäre und die Teamleitung, außerdem liegt ihr Büro 7 Gehminuten von der Wohnung entfernt, in der wir gemietet haben ein Apartment. Ich brauchte mehr als ein paar Wochen, um die Kinderbetreuung zu organisieren, und tatsächlich ging ich am 28. Februar zur Arbeit.

  13. Jetzt verstehe ich (parallel mit einem anderen Praktikanten, er kommt aus einem anderen Studiengang) den Code des Hauptprojekts des Unternehmens und erstelle parallel unter Anleitung des Teamleiters eine Schulungsanwendung, deren einziges Ziel besteht darin, die grundlegenden Technologien und Techniken zu nutzen, die im Wesentlichen durchgängig vorhanden sind, von der Datenbank bis zum Browserprojekt, jedoch in kleinem Maßstab. Am ersten Tag gab es ein wenig Panik, aber schon am zweiten Tag habe ich mich auf die Aufgabe eingelassen, jetzt ist es sehr interessant, ich komme vor allen anderen zur Arbeit, ich gehe fast später als alle anderen, jeden Tag habe ich das Gefühl, dass ich Ich verbessere meine Fähigkeiten. Tim-Leiter sagte, es sei an der Zeit, mit der eigentlichen Aufgabe fortzufahren (ich wurde am 28. Februar eingestellt).

  14. Tipps für Anfänger:

    • Englisch. Ich habe das Glück, dass ich bereits fließend Englisch spreche (was für ein Glück, dass wir zum Beispiel oft Couchsurfing-Reisende beherbergt haben, mein Englisch verbessert sich – Gott segne Sie). Ohne Englisch in der Programmierung bist du fast null. Leider ist es so.

    • Schrauben. Während meiner Ausbildung hatte ich eine Regel: Kein Tag ohne eine Zeile Code. Und standardmäßig habe ich mehrere Stunden am Tag mit Programmieren verbracht. Leider (oder vielleicht auch nicht) habe ich keine Bücher gelesen. Aber ich habe mir viele Video-Tutorials und Reden von Konferenzen angesehen und wirklich eine Menge Antworten auf Stackoverflow noch einmal gelesen.

    • Dennoch: Sammlungen zuerst. Parallelität – nach dem Residualprinzip. Obwohl ich jetzt einen Platz in meinen echten Multithreading-Fähigkeiten habe, ist die Arbeit mit Sammlungen meiner Meinung nach viel wichtiger. Während der Interviews wurde nur gefragt: „Ich weiß, was ein Mutex ist, und da ging es nur um Parallelität.“ Aber bei den Kollektionen war es völlig anders.

    • Machen Sie unbedingt ein paar Dutzend Übungen auf sqlex.ru (dies gilt jeweils für Esquel). Nach ein paar Dutzend Levels in JavaRush ist es sehr einfach, aber gleichzeitig äußerst nützlich sowohl für die Backend-Programmierung als auch für Interviews.

    • Stellen Sie sicher, dass Sie für Ihr einfaches Projekt Frameworks wie Spring-Boot + Hibernate + Mayesquel + eine Art Template-Engine (wie Timeleaf oder Mustash) verwenden. Oder ich denke, ein Praktikum zu absolvieren wird ähnlich sein, aber ich kann hier nichts empfehlen. Eine Person mit einer bloßen Theorie über Spring und einem abgeschlossenen Programmierprojekt ist einfach Himmel und Erde. Nach dem Projekt waren die durchschnittlichen Übungen des Kurses praktisch kindgerecht, die komplexen eher unterdurchschnittlich. Einfach durch die Erhöhung der Programmierreife.

    • Es ist unbedingt erforderlich, die Transaktionsverarbeitung zu verstehen und zu diesem Projekt hinzuzufügen, nicht nur auf der Ebene „Zu einer Methode im @Transactional-Dienst hinzufügen“. Das Thema Transaktionen war in Interviews ständig Thema. Ich bedauere, dass ich vor der Jobsuche nicht sqlex.ru und die Spring- und Hibernate-Transaktionen ausgegraben habe. Eine Person, die transaktional ist, wird viel, viel besser mit Interviewpartnern für eine Backend-Position sprechen.

    • Wenn jemand Fragen oder Probleme hat, schreiben Sie mir, ich werde auf jeden Fall versuchen, so gut ich kann zu helfen. Vor allem diejenigen, die im Frühjahr ihr erstes Projekt machen. Ich würde mich freuen, jeden in Moskau zu treffen.

Kommentare
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION