JavaRush /Java-Blog /Random-DE /In der Entwicklung muss man das Böse nicht bekämpfen, abe...

In der Entwicklung muss man das Böse nicht bekämpfen, aber man muss auch keinen Kontakt aufnehmen: die Geschichte der Programmiererin Irina

Veröffentlicht in der Gruppe Random-DE
In den letzten 8 Jahren haben Tausende von Studenten den JavaRush-Kurs besucht. Heute sind mehr als 1,5 Millionen Nutzer aus 106 Ländern auf der Projektwebsite registriert. Nicht alle Absolventen hatten Zeit, über ihre Erfolge zu sprechen: wie sie studiert, Vorstellungsgespräche bestanden und als Entwickler angefangen haben. Aber die heutigen Studenten sind daran interessiert, die Geschichten derjenigen zu erfahren, die bereits in der IT arbeiten. Wir haben die Sache selbst in die Hand genommen und eine neue Sonderserie über Entwickler aus verschiedenen Ländern und Unternehmen gestartet, die in JavaRush geschult wurden. Unsere zweite Geschichte handelt von Irina . In der Schule und an der Universität liebte sie die technischen Wissenschaften, beherrschte ein wenig Programmieren, entschied sich jedoch für die Arbeit im Bereich kontextbezogene Werbung. Dennoch wollte Ira sich in der Entwicklung versuchen. Eines Tages erhielt sie einen Newsletter über die Rekrutierung von Praktikanten als Entwickler für einen Dienst. Und obwohl das Mädchen das Vorstellungsgespräch nicht bestand, motivierte es sie, Java zu lernen.„Man muss das Böse in der Entwicklung nicht bekämpfen, aber man muss auch keinen Kontakt aufnehmen“: die Geschichte der Programmiererin Irina - 1

„Ich wollte mich unbedingt in der Entwicklung versuchen“

Als nach der 9. Klasse die Wahl einer weiteren Studienrichtung anstand (wir hatten eine Einteilung in Technik, Geisteswissenschaften, Wirtschaft, Medizin), entschied ich mich zwischen Geisteswissenschaften und Technik. Die humanitäre Richtung schien mir das Bild eines Journalisten zu sein, der das Böse zum Wohle des Guten auf der ganzen Welt aufdeckt. Über technische Dinge habe ich so gedacht: Wenn ich das Böse nicht bekämpfe, dann habe ich zumindest keinen Kontakt mit ihm, also mit ihnen, mit den Menschen. Ich bin den Weg des geringsten Widerstands gegangen und habe die technische Richtung gewählt. Nach der Schule besuchte ich eine Universität, um Informatik und Computertechnik zu studieren. Leider vermittelte die Universität in keiner Sprache spezifische Kenntnisse. Ich habe bruchstückhaft etwas über C++, C#, JavaScript und Layout gelernt. In meinem dritten Jahr interessierte ich mich zufällig für kontextbezogene Werbung und bekam ebenso zufällig einen Job bei einem ziemlich bekannten Unternehmen. Dadurch blieb ich zwei Jahre lang in der Werbung tätig. Der Erfolg war gut, aber ich wollte mich unbedingt in der Entwicklung versuchen. Ich kehrte auch ohne einen gut durchdachten Plan zum Programmieren zurück: Meine Arbeits-E-Mail erhielt einen Newsletter über die Rekrutierung von Java-Entwicklern für einen neuen Dienst. Ich beschloss, zu einem Vorstellungsgespräch zu gehen. Natürlich reichten meine damaligen Grundkenntnisse nicht für ein Angebot aus, aber diese Geschichte veranlasste mich, zu versuchen, etwas über Java zu suchen. Ich habe die JavaRush-Website zufällig im Internet gefunden. Anfangs war ich nicht begeistert: Wegen all der Bilder und Robotergeschichten kam es mir leichtfertig vor, aber die Möglichkeit, Aufgaben zu üben und zu überprüfen, hat mir sehr gut gefallen. Ich blieb und beschloss, es zu versuchen, aber dann blieb ich stecken.

„Ich habe meine ersten Vorstellungsgespräche nicht bestanden.“

Ich habe ohne festen Zeitplan gelernt, in Phasen, in denen ich anfing: in den Arbeitspausen, manchmal auch nachts. Ungefähr auf der Stufe 16-17 begann ich, nach einem Job zu suchen (zu diesem Zeitpunkt hatte ich mit einigen Unterbrechungen etwa drei Monate lang studiert). Wenn man keine Berufserfahrung hat, fragen sie gerne nach Algorithmen, und ich kannte sie auch kaum. Deshalb habe ich die ersten Interviews nicht bestanden. Ich musste mich extra vorbereiten, nach den häufigsten Fragen suchen und mir die Antworten darauf merken. Ich habe dringend SQL gelernt, Code-Versionierungssysteme studiert (Git wird in JavaRush unangemessen weit erwähnt, nur Level 30), SOLID, Probleme auf quizful.net gelöst und Sortieralgorithmen auswendig gelernt. Daraufhin wurde ich als Junior in einem kleinen Unternehmen eingestellt. Meine Aufgaben bei meinem ersten Job waren sehr trivial: neue Systemfunktionen entwickeln, bestehende ergänzen, Fehler beheben. Wir haben nach der Wasserfall-Methodik gearbeitet: Das Unternehmen sendet eine Aufgabe, der Analyst beschreibt sie etwas detaillierter, der Entwickler implementiert sie, der Analyst testet sie und dann rollt der Entwickler sie in das Produkt ein. Wir haben keine speziellen Technologien verwendet: Wir haben alles in reinem Java geschrieben und einen Monolithen anstelle von Microservices verwendet. Um mit der Datenbank zu arbeiten, verwendeten wir unser eigenes Closed-Source-Framework. Ganz am Anfang gab es viele Schwierigkeiten – angefangen beim Hochladen des Projekts in das Repository bis hin zum Schreiben einer Anfrage in die Datenbank, damit es nicht zu einer Zeitüberschreitung kommt. Ich musste viel über die Arbeit mit JSON und SOAP googeln, was Maven ist und wie man damit ein Projekt erstellt. Ich habe JavaRush nicht aufgegeben, ich habe versucht, mindestens jeden zweiten Tag zu lernen, obwohl es ein paar Mal vorkam, dass ich einen Monat lang aufgegeben habe. Ziel war es aber, die begehrten 40 Level zu erreichen. Gleichzeitig habe ich einen Kurs zum Spring-Framework von Otus belegt. Der Frühling eröffnete viele neue Möglichkeiten und die Anzahl der Angebote in meinem Lebenslauf verzehnfachte sich. Während der Quarantäne habe ich meinen Job gewechselt und bin zu einem Projekt mit Microservice-Architektur gewechselt. Wir schaffen einen Service für die Suche, den Verkauf, den Kauf und die Vermietung von Wohn- und Gewerbeimmobilien sowie die Abwicklung und Betreuung von Hypotheken. 80 % unserer Dienste sind in Kotlin geschrieben, weitere 20 % in Java.

Meine Pläne für die nahe Zukunft:

  1. Ein tieferer Einblick in die Architektur. Ich möchte das Design der Backend-Architektur im Detail studieren.
  2. C++ lernen. Ich denke, dass dies auf jeden Fall für jeden Programmierer nützlich sein wird – um bei Bedarf Teile der Anwendung schreiben zu können, die kritisch schnell funktionieren müssen. Dies ist auch für komplexe mathematische Berechnungen nützlich.
  3. DevOps. In einigen Unternehmen ist dies sogar eine zwingende Voraussetzung für Programmierkenntnisse. Für alle anderen wird es auf jeden Fall nützlich sein.
  4. Ich bereue überhaupt nicht, dass ich mich in der 9. Klasse für eine technische Richtung entschieden habe und dass ich vor zwei Jahren keine Angst davor hatte, die Werbung aufzugeben und mit dem Programmieren zu beginnen. Entwicklung ist eine Art Magie, eine Möglichkeit, komplexe Dinge für Menschen einfach zu machen und verwirrende Dinge verständlich zu machen. Jetzt versuche ich, meinen 12-jährigen jüngeren Bruder für das Programmieren zu begeistern. Vor einem Jahr habe ich ihm einen Arduino-Baukasten geschenkt und überlege, ihm ein Buch über die Erstellung von Minecraft in Python zu kaufen. Wenn ich etwas älter bin, zeige ich Ihnen JavaRush. Ich denke, es wird ihm gefallen. Eines der wichtigsten Dinge, die mir JavaRush vermittelt hat, war die Erkenntnis, dass man wirklich keine Angst haben kann, für gutes Material zu bezahlen. Es wird sich hundertfach auszahlen.

Tipps für einen Anfängerentwickler:

  • Programmieren Sie weiter. Die gesamte Arbeit eines Programmierers besteht darin, bestimmte Probleme zu lösen, bestimmte Fehler zu finden und diese zu korrigieren. Manchmal kann (und wird!) es unerträglich schwierig, langweilig und nervig erscheinen, aber der Moment, in dem die Aufgabe endlich gelöst ist, fühlt sich wie ein echter Durchbruch, ein Sieg, fast wie eine Entdeckung an. Und so weiter im Kreis. Wut – Akzeptanz – lange Versuche und endlose Misserfolge – Sieg. Und das Warten auf den nächsten Durchbruch und Sieg ist der Reiz eines Programmierers.„Man muss das Böse in der Entwicklung nicht bekämpfen, aber man muss auch keinen Kontakt aufnehmen“: die Geschichte der Programmiererin Irina - 2
  • Lernen Sie immer und wann immer möglich weiter. Lesen Sie Artikel und Bücher, finden und belegen Sie Kurse in bestimmten Entwicklungsbereichen, probieren Sie unbedingt neue Technologien aus und wenden Sie sie in Ihren Heimprojekten an. Kommunizieren Sie mit Menschen, die sich gleichermaßen für Entwicklung begeistern, tauschen Sie Erfahrungen und Ideen aus. Früher war es die Kommunikation mit so ehrgeizigen Leuten, die mir half, in meiner ersten Gesellschaft nicht zu verkümmern, keine Angst zu haben und weiterzumachen.
  • Daher der dritte Ratschlag: Haben Sie keine Angst, etwas zu ändern : Arbeit, Framework, Sprache (möge JavaRush mir verzeihen). Alle meine größten Siege über mich selbst errang ich im Moment des Jobwechsels. Zunächst scheint es beängstigend, irgendwohin zu gehen, ohne die Technologie oder Sprache vollständig zu beherrschen, aber es ist sehr anregend, sich weiterzuentwickeln und diese unbekannte Technologie oder Sprache zu studieren. Ein zweiter Wind kommt auf, eine besondere Bedeutung erscheint, etwas zu verstehen und zu studieren.
  • Es ist gesund, seine Stärken einzuschätzen. Auch wenn es Ihnen eine Zeit lang gelingt, Arbeit, Selbststudium zu Hause, einige Kurse, Studium, vielleicht eine Familie zu vereinbaren, ist die Wahrscheinlichkeit groß, dass Ihnen die Kraft ausgeht. Leider kenne ich mehrere Leute, die nach einer langen Zeit der Kombination von Studium, Geldarbeit und der Arbeit als Entwicklerpraktikant irgendwann müde wurden und mit dem Programmieren aufhörten. Wenn wir uns eine zusätzliche Auszeit genommen hätten, ein Sabbatical an der Universität, einen freien Tag zum Ausruhen statt zum Lernen genutzt hätten, unsere Kurse für mehrere Wochen unterbrochen hätten, wäre vielleicht alles anders gekommen.
  • „Man muss das Böse in der Entwicklung nicht bekämpfen, aber man muss auch keinen Kontakt aufnehmen“: die Geschichte der Programmiererin Irina - 3
Kommentare
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION