Nachricht an den zukünftigen Programmierer

Sie haben sich also entschieden, Programmierer zu werden.


Sie könnten daran interessiert sein, etwas Neues zu schaffen.


Vielleicht zieht es Sie zu hohen Gehältern.


Vielleicht möchten Sie nur den Tätigkeitsbereich ändern.


Nicht der Punkt.


Wichtig - Sie entscheiden sich , Programmierer zu werden .


Was ist jetzt zu tun?


KDPV


Und es gibt verschiedene Ansätze.


Erstens : Besuchen Sie die Universität für eine IT-Spezialität und erhalten Sie eine spezielle Ausbildung. Der alltäglichste, relativ zuverlässige, extrem lange, grundlegendste Weg. Es funktioniert, wenn Sie noch die Schule abschließen oder die Möglichkeit haben, sich mit den nächsten anderthalb (bestenfalls, wenn Sie alles im Handumdrehen erledigen und im 2. Jahr mit der Arbeit beginnen können) bis vier (wenn es nicht Ihre Sache ist, Arbeit mit Schule zu verbinden) zu versorgen ) Jahre.


Was ist hier wichtig zu wissen?


  • Sie müssen die richtige Universität wählen. Siehe Trainingsprogramme, Bewertungen. Ein guter Indikator sind die Universitätsolympiaden. Wenn die Hochschulteams bei relativ großen Programmierolympiaden mindestens regelmäßig unter den Top Ten stehen, ist das Codieren an der Universität kein Grund (trotz der Tatsache, dass Sie persönlich möglicherweise nicht an Olympiaden interessiert sind). Nun, im Allgemeinen gilt der gesunde Menschenverstand: Es ist unwahrscheinlich, dass der brüderliche Zweig der Baikal State University Sie zu einem mächtigen Full-Stack macht.
    Beispiele für gute Universitäten: Moskauer Staatliche Universität / Staatliche Universität St. Petersburg (offensichtlich), Baumanka (Moskau), ITMO (St. Petersburg), NSU (Nowosibirsk). Trotz all ihrer Bedeutung ist es durchaus möglich, das Budget in ihnen zu erreichen, wenn nicht die obersten Abteilungen zu markieren.
  • Keine universelle Einheit. Trotz der Tatsache, dass Sie in allen möglichen Dingen umfassend geschult werden, reicht dies nicht aus. Aufgrund der Bürokratie wird das Schulungsprogramm fast immer hinter den modernen Trends zurückbleiben. Bestenfalls für ein oder zwei Jahre. Im schlimmsten Fall - 5-10 Jahre. Sie müssen den Unterschied selbst ausgleichen. Nun, das Offensichtliche: Wenn Sie das Material auf Augenhöhe mit den anderen Schülern studieren, ist jeder von ihnen Ihr gleichberechtigter Konkurrent. Wenn Sie sich optional melden, sehen Sie auf dem Markt viel besser aus.
  • Suchen Sie so früh wie möglich nach Arbeit. Ich habe im zweiten Jahr angefangen zu arbeiten. Am Ende der Universität war ich bereits ein ziemlich mittlerer Entwickler und kein bescheidener Juni ohne Erfahrung. Ich denke, es ist offensichtlich, dass es nach dem Abschluss angenehmer ist, 100.000 zu verdienen als 30.000. Wie erreicht man das? Erstens, siehe Punkte A und B. Zweitens, gehen Sie zu Meetings, Festivals, Konferenzen, Jobmessen. Beobachten Sie den Markt und versuchen Sie, einen Teilzeit-John / Trainee in einem Unternehmen zu finden, in dem Sie zumindest annähernd geeignet sind. Haben Sie keine Angst vor bezahlten Konferenzen: Studenten erhalten dort oft sehr schöne Rabatte.

Wenn all diese Punkte beachtet werden, können Sie mit dem Erhalt eines Diploms ein äußerst guter Spezialist mit Berufserfahrung und einer Fülle von Grundkenntnissen werden, auf die Autodidakten häufig aufgrund eines inapparenten Charakters stoßen. Nun, eine Kruste kann helfen, wenn Sie planen, ins Ausland zu gehen: Sie schauen sie sich dort oft an.


Wenn Sie sich nicht daran halten ... Nun, Sie können eine Kruste bekommen, indem Sie mit dem Fluss gehen, abschreiben und sich auf die Prüfung für die Nacht vorbereiten. Aber wie denkst du, wie wettbewerbsfähig wirst du dann sein? Natürlich sage ich nicht, dass Sie alles in den Top 5 schließen müssen. Sie müssen nur Wissen bekommen. Verwenden Sie gesunden Menschenverstand. Erfahren Sie, was interessant und nützlich ist, aber kümmern Sie sich nicht um Noten.


Bildung & Motivation


Die Hauptsache ist nicht, was sie versuchen, in dich zu stopfen. Die Hauptsache ist, dass es interessant und relevant ist


- -


Als nächstes der zweite Weg : Programmierkurse . Im Internet wimmelt es nur so von Angeboten, Sie in nur drei Monaten zum Junior zu machen. Genau hier mit dem Portfolio, und sogar helfen, einen Job zu finden. Nur für 10.000 pro Monat, ja.
Vielleicht wird es für jemanden funktionieren, aber rein IMHO: das ist kompletter Müll. Verschwenden Sie keine Zeit und kein Geld. Und hier ist warum:


Eine Person, die weit von der IT entfernt ist, kann in 3 Monaten nicht mehr in die Besonderheiten des Berufs eintreten. Das ist einfach nichts. Es müssen zu viele Informationen gelernt werden, zu viele, um sie zu verstehen, und außerdem müssen Sie Ihre Hand füllen.


Was werden sie dann an Sie verkaufen? Ihnen wird eine "mechanische Fähigkeit" verkauft. Ohne viel Verständnis für die Details zeigen sie Ihnen, was Sie schreiben müssen, um genau dieses Ergebnis zu erzielen. Mit detaillierten Anweisungen und der Hilfe eines Lehrers schreiben Sie immer noch eine Art Bewerbung. Eins, maximal zwei. Hier ist das Portfolio. Und helfen Sie bei der Suche nach einem Job - Mailing von offenen Stellen im Juni von großen Unternehmen, bei denen Sie wahrscheinlich kein Vorstellungsgespräch führen werden.


Warum so? Es ist ganz einfach: Für einen Programmierer ist es sehr wichtig, abstrakt zu denken. Ein Programmierer löst Probleme, die auf milliardenfache Weise gelöst werden können. Und die Hauptaufgabe besteht darin, eine der Milliarden auszuwählen, die richtigste, und sie zu realisieren. Wenn Sie ein oder zwei Projekte gemäß den Anweisungen erstellen, erhalten Sie einige Kenntnisse der Programmiersprache, lernen jedoch nicht, wie Sie abstrakte Probleme lösen. Zeichnen Sie eine Analogie: Stellen Sie sich vor, Sie werden in Orientierungslauf geschult, werden auf zwei einfachen Touristenrouten geführt und sagen dann, dass Sie bereit sind, die Taiga im Winter alleine zu erobern. Nun, sie haben dir beigebracht, einen Kompass zu benutzen und ein Feuer ohne Streichhölzer anzuzünden.


Fazit: Glauben Sie nicht denen, die versprechen, Sie in kurzer Zeit zu "fahren". Wenn dies möglich wäre, wären alle schon lange Programmierer gewesen.


Wie zeichnet man eine Eule?


Links: Was wird dir beigebracht? Richtig: Was wird von Ihnen bei der Arbeit verlangt?


- -


Der dritte Weg ist der von der Mehrheit gewählte Weg. Selbststudium .


Der schwierigste, aber vielleicht der edelste Weg. Lassen Sie uns näher darauf eingehen.


Sie haben sich also entschieden, Programmierer zu werden. Wo soll ich anfangen?


Zunächst müssen Sie Ihre Frage beantworten: Warum wollen Sie das? Wenn die Antwort lautet : " Nun , das ist natürlich nicht besonders interessant, aber sie zahlen viel", dann können wir hier aufhören. Du bist nicht hier. Selbst wenn Ihre Willenskraft ausreicht, um viele Informationen zu schaufeln, Tausende von Codezeilen zu schreiben, Hunderte von Fehlern zu erleiden und dennoch einen Job zu bekommen, führt dies ohne Liebe zum Beruf nur zu emotionalem Burnout. Das Programmieren erfordert eine enorme Menge an intellektueller Anstrengung, und wenn diese Anstrengung nicht durch emotionale Erträge in Form von Zufriedenheit für die Aufgabe befeuert wird, wird das Gehirn früher oder später ausflippen und Ihnen die Fähigkeit nehmen, überhaupt etwas zu entscheiden. Nicht das angenehmste Szenario.


Wenn Sie sicher sind, dass Sie interessiert sind, können Sie die Einzelheiten festlegen - was genau möchten Sie tun? Wenn Sie nicht wissen, wie sich Programmierer voneinander unterscheiden können, hilft Ihnen Google.


Ich werde sofort den ersten Rat schreiben, um nicht zu vergessen: Englisch lernen. Englisch wird benötigt. Ohne Englisch nirgendwo. Auf keinen Fall. Ohne Englisch können Sie kein normaler Programmierer werden. Das war's.


Als nächstes ist es wünschenswert, eine Roadmap zu erstellen: einen Plan, nach dem Sie entwickeln werden. Studieren Sie die Besonderheiten, sehen Sie sich die offenen Stellen in Ihrem Fachgebiet an und finden Sie oberflächlich heraus, welche Technologien dort eingesetzt werden.


Ein Beispiel für eine Roadmap für einen Backend-Programmierer (natürlich für niemanden, dies ist nur eine der möglichen Optionen):


  1. Die Grundlagen von HTML / CSS.
  2. Python Die Grundlagen.
  3. Netzwerkprogrammierung. Python- und Webinteraktion.
  4. Entwicklungsrahmen. Django, Flasche. (Bemerkung: Um zu verstehen, welche Art von "Django" und "Flasche" Sie benötigen, müssen Sie sich die offenen Stellen ansehen und lesen, was dort erforderlich ist.)
  5. Eingehende Untersuchung von Python.
  6. Die Grundlagen von js.

Ich wiederhole, dies ist ein sehr grober Plan, von dem jeder für sich genommen riesig ist und viele Themen nicht enthalten sind (zum Beispiel Codetests). Dies ist jedoch zumindest eine Art Systematisierung des Wissens, die es Ihnen ermöglicht, nicht verwirrt zu werden, was Sie wissen und was nicht. Während des Studiums wird klarer, was fehlt, und diese Roadmap wird ergänzt.


Weiter: Finden Sie die Materialien, aus denen Sie lernen werden. Die Hauptoptionen sind:


  • Online-Kurse. Nicht jene Kurse, die "Juni in 3 Tagen" sind, sondern die eine bestimmte Sache lehren. Oft sind diese Kurse kostenlos. Beispiele für Websites mit normalen Kursen: stepik , coursera .
  • Online-Tutorials. Es gibt kostenlose, Shareware, bezahlt. Wo Sie bezahlen müssen und wo nicht, werden Sie selbst herausfinden. Beispiele: htmlacademy , learn.javascript.ru , django book .
  • Bücher. Es gibt viele, viele. Wenn Sie sich nicht entscheiden können, drei Tipps: Versuchen Sie, neue Bücher zu nehmen Informationen werden sehr schnell veraltet; Der O'Reilly-Verlag hat ein ziemlich hohes Qualitätsniveau und eine normale Präsentation. Wenn möglich, lesen Sie auf Englisch.
  • Mitapy / Konferenzen / Vorträge. Nicht so nützlich in Bezug auf die Informationssättigung, aber äußerst nützlich in Bezug auf die Möglichkeit, mit Kollegen im Shop zu kommunizieren, aktuelle Fragen zu stellen und Freunde zu finden. Vielleicht sogar einen Job finden.
  • Google. Viele unterschätzen, aber die Fähigkeit, einfach Antworten auf einige Fragen zu finden, ist sehr wichtig. Fühlen Sie sich frei, seltsame Dinge zu googeln. Sogar erfahrene Senioren tun dies. Die Fähigkeit, Informationen über etwas schnell zu finden, entspricht praktisch der Tatsache, dass Sie es kennen.

Okay, wir haben uns für die Informationsquellen entschieden. Wie arbeite ich mit ihnen?


  1. Lesen / hören Sie genau zu. Lies nicht müde. Tauchen Sie in die Bedeutung ein und überspringen Sie keine Momente, die offensichtlich erscheinen. Oft geschieht der Übergang vom Offensichtlichen zum Unverständlichen recht schnell. Fühlen Sie sich frei, zurück zu kommen und erneut zu lesen.
  2. Skizzieren Sie die Informationen. Erstens ist es für Sie einfacher, Ihre Notizen zu sortieren, wenn viele Informationen vorhanden sind. Zweitens werden Informationen auf diese Weise besser aufgenommen.
  3. Führen Sie alle Aufgaben aus, die Ihnen die Quelle bietet. Nein, nicht so. Führen Sie ALLE Aufgaben aus, die Ihnen die Quelle bietet. Sogar diejenigen, die einfach erscheinen. Besonders diejenigen, die zu kompliziert erscheinen. Wenn Sie nicht weiterkommen , bitten Sie um Hilfe zum Stackoverflow , zumindest über Google Übersetzer. Aufgaben werden aus einem bestimmten Grund geschrieben, sie werden für die korrekte Assimilation des Materials benötigt.
  4. Überlegen Sie sich Aufgaben selbst und erledigen Sie sie auch. Praxis sollte im Idealfall mehr als Theorie sein. Je dichter Sie das Material reparieren, desto wahrscheinlicher ist es, dass Sie es in einem Monat nicht vergessen werden.
  5. Optional: Verfassen Sie beim Lesen Ihr Quiz. Schreiben Sie knifflige Fragen an eine separate Quelle und lesen Sie nach einer Woche oder einem Monat und versuchen Sie zu antworten. Es funktioniert nicht: wieder lernen.

Und wir wiederholen diese 5 Punkte für jede Technologie, die untersucht wird. Nur so (mit einem gründlichen Studium der Theorie und einer dichten Praxisabdeckung) verfügen Sie über eine qualitativ hochwertige Wissensbasis, mit der Sie professionell werden können.


Und es scheint, dass alles einfach ist: Wir lernen Technologie nacheinander, verstehen Zen und gehen zur Arbeit. So ist es, aber nicht so.


Die meisten Leute, die Programmieren studieren, machen so etwas:


Mahnkrüger


Das Bild wird ehrlich von hier gestohlen


Und hier müssen Sie sich eingehender mit den einzelnen Schritten befassen:


Start : Sie haben kein Wissen. Ausgangspunkt. Bisher ist nichts klar, aber wahrscheinlich äußerst interessant. Der Weg beginnt bergauf, aber leicht. Bald wirst du hochklettern


Peak of Nonsense : "Hurra, du hast die ersten Kurse abgeschlossen! Alles wird gut!" In diesem Stadium überschattet die Euphorie der ersten Erfolge die Augen. Der Erfolg scheint nahe zu sein, obwohl Sie noch am Anfang der Reise stehen. Und wenn Sie nach diesem Erfolg streben, werden Sie vielleicht nicht bemerken, wie ein schneller Sturz in die Grube beginnt. Und der Name dieser Grube:


Valley of Despair : Also haben Sie die Hauptgerichte durchgesehen, einige Bücher gelesen und beschlossen, etwas Eigenes zu schreiben. Und plötzlich funktioniert es nicht mehr . Alles scheint bekannt zu sein, aber wie man dies kombiniert, damit es funktioniert, ist nicht klar. "Ich weiß nichts " "Ich werde keinen Erfolg haben . " An diesem Punkt geben viele auf. In der Tat gibt es wirklich Wissen, und sie sind nirgendwo verdunstet. Klare Anforderungen, Support ist einfach verschwunden. Die echte Programmierung hat begonnen. Wenn Sie in einem Raum manövrieren müssen, in dem es ein Ziel gibt, aber keine Zwischenstufen gibt, geraten viele in einen Stupor. In Wirklichkeit ist dies jedoch nur eine weitere Trainingsstufe - auch wenn sich in den ersten zehn Fällen alles mit großen Anstrengungen als hässlich herausstellen wird. Die Hauptsache ist, die Angelegenheit zumindest irgendwie immer wieder zum Abschluss zu bringen. Zum elften Mal wird es einfacher. Im fünfzigsten wird eine Lösung erscheinen, die Ihnen schön erscheinen wird. Im hundertsten wird es nicht beängstigend sein. Und dann komm


Der Hang der Erleuchtung : In diesem Stadium tauchen die Grenzen Ihres Wissens und Ihrer Unwissenheit deutlich auf. Unwissenheit ist nicht länger beängstigend, Verständnis scheint zu überwinden. Das Manövrieren im Weltraum ohne Lösungen wird einfacher. Dies ist die Ziellinie. Wenn Sie sich bereits bewusst sind, was Ihnen als Spezialist fehlt, werden Sie das Notwendige beenden und festigen und mit einer ruhigen Seele eintreten


Stabilitätsplateau : Herzlichen Glückwunsch. Dies ist das Ende. Sie sind Spezialist. Sie können arbeiten, Sie werden nicht verloren gehen, wenn Sie auf eine unbekannte Technologie treffen. Sie können fast jedes Problem lösen, wenn Sie sich genügend Mühe geben. Und trotz der Tatsache, dass dies die Ziellinie ist, ist dies nur der Anfang eines noch größeren Weges.


Die Wege eines Programmierers.


Viel Glück damit!


Literatur zum optionalen Lesen :
Über das Programmieren und den Dunning-Krueger-Effekt: tyk .
Hardcore-Weg, um in 9 Monaten Programmierer zu werden (nicht für jedermann): tyk .
Liste der Projekte, die während des Trainings unabhängig umgesetzt werden können: tyk .
Nur ein bisschen mehr Motivation: tyk .

Source: https://habr.com/ru/post/de450652/


All Articles