Beruf: Programmierer. Nicht alles ist klar

Wir haben über Front-End und Back-End geschrieben , über mobile Entwicklung und Testsaber das waren Sonderfälle. Wenn eine Person zum ersten oder nächsten Beruf kommt, sagt sie selten, dass sie Entwickler für iOS oder Proktologe wird. In der Regel klingt dies wie ein „Programmierer“ und ein „Arzt“. Die Spezialisierung erfolgt später mit Erfahrung. Aber um festzuhalten, dass Sie Programmierer, Arzt, Architekt, Geologe usw. werden möchten, müssen Sie die Romantisierung des Berufs loswerden und vernünftig und sinnvoll vorgehen. Auch wenn Sie sich plötzlich entschlossen haben, Programmierer zu werden, um „nach 35 in die IT einzusteigen“. Wenn wir vom Standpunkt der Romantik aus über Programmierer sprechen, dann sind dies Menschen, die unsere Ideen in Code umwandeln und das Leben besser, einfacher und bequemer machen. Um es ganz klar auszudrücken, die Arbeit eines Programmierers ist eine angespannte, oft routinemäßige Arbeit mit vielen Vor- und Nachteilen. Wir werden darüber reden.

KĂĽnstlerin - Nadezhda Kotkina, posiert - cyber_roach

Wer ist das?


Der Begriff "Programmierer" kann eng programmierte Programmierer, Softwareentwickler, Ingenieure, Systemanalysten usw. verbergen. Trotzdem haben alle Programmierer eines gemeinsam: die Fähigkeit, menschliche Anforderungen in Maschinencode zu integrieren, um Arbeit oder Unterhaltung automatisiert, bequem und einfach zu gestalten. Der Programmierer erstellt Anweisungen fĂĽr den Computer. Als Ergebnis der AusfĂĽhrung dieser Anweisungen wird eine Art Zielergebnis erhalten. 

Sie sollten darĂĽber nachdenken, ob Sie ein zukĂĽnftiger Programmierer sind, wenn ...

... Ihre Motivation von innen kommt, Sie den Prozess der Steuerung eines Computers mögen, Sie nicht nur ein Programm (Spiel, Anwendung) verwenden möchten, sondern auch wissen möchten, wie es funktioniert, es ändern.

... Sie erwarten keine verrĂĽckten Einkommen und denken nicht, dass Programmieren ein neuer Rock'n'Roll ist, vor allem der Wunsch, Magie zu erschaffen: Ideen in Code umzuwandeln.

... Sie wissen, wie Sie jedes Programm, jede Site, jede mobile Anwendung verbessern können. Sie wissen genau, was Sie vom Programm erwarten, und möchten lernen, wie Sie perfekten Code erstellen.

Wo wird es gebraucht?


Heute werden überall Programmierer benötigt, und ich glaube nicht, dass sich dieser Trend in den nächsten 10 bis 15 Jahren ändern wird. Programmierer werden in Industrie, Wissenschaft, Raumfahrt, Wirtschaft, Medizin, Verkehr und sogar nicht in IT-Unternehmen benötigt (scherzen Sie mit Witzen, wissen Sie, wie schwierig es ist, einen großartigen 1C-Programmierer oder -Entwickler für einen Online-Shop auf 1C-Bitrix zu finden ?!). Selbst im Institut für Kirche und Wohltätigkeit besteht im Allgemeinen eine Nachfrage nach Programmierern. Und das ist großartig, denn Sie können den Beruf eines Programmierers nicht nur wählen, sondern auch mit Ihrem Hobby in Verbindung bringen: Chemie, Biologie, Mechanik, Kommunikation und sogar Geschichte und Linguistik. Wenn Sie außerdem die Fähigkeiten der Softwareentwicklung und die Grundlagen des Kerngeschäfts kombinieren, steigt Ihr Marktpreis enorm und der Wettbewerb ändert sich.

Daher müssen Sie nicht so sehr verstehen, wo Sie arbeiten müssen, sondern wie viel von der Entwicklung näher bei Ihnen liegt.

  • — (, , , , IoT ..). .
  • - ( ) — - , , - . WEB, .
  • — , . , , .
  • — , , — (, , ..). .
  • , — , . , , . , COVID-19, :-)
  • ( ) — , . , . 
  • DevOps/DevSecOps — , . « , », DevOps , .
  • Das Geschäft mit angewandter Entwicklung und Software ist eine separate Entwicklungswelt, in der Sie einen Desktop auf Delphi schreiben und Millionen verdienen, COBOL kennen und der verlockendste Spezialist auf dem Markt sein, Java durchsuchen und die Hauptrollen in der Community ĂĽbernehmen können usw. Dies ist ein riskanter Entwicklungspfad, vor allem fĂĽr erfahrene Entwickler. Wenn Sie sich jedoch in C / C ++ / Java oder eine Art „Latin from Programming“ verlieben, warum nicht? 

Ich liste wieder die Hauptbereiche auf, aber tatsächlich werden an ihrer Schnittstelle neue vielversprechende Bereiche gebildet, zum Beispiel die Verarbeitung natĂĽrlicher Sprache (NLP), AR / VR, Spieleentwicklung, Testautomatisierung und so weiter. 

Es ist wichtig, eine andere Abteilung zu verstehen.

  1. - , , , , UI/UX .. , ( ?:-))
  2. -- , : , CRM, ERP, , , , -, 1 .. , , - , , . 

Während des Programmierunterrichts werden Sie sich sicherlich ein wenig mit allen Bereichen und Aufgaben auseinandersetzen. Daher haben Sie buchstäblich sechs Monate nach Beginn des Trainings eine Vorstellung davon, zu welchen Seiten Sie wechseln werden. Zum Beispiel habe ich einen Freund, der nichts anderes tun wollte als das, was mit dem Software-Stuffing von Lesern zu tun hat. Infolgedessen ging er durch Barnes & Noble, arbeitete mit Google-Projekten und arbeitet jetzt in China (zufrieden, gesund, Fan des Lebens im Land). Jeder hat seinen eigenen Weg.

Grundlegende berufliche Anforderungen


Das Schreiben von Code an sich ist nicht die schwierigste Aufgabe, es ist viel schwieriger, die Anforderungen zu verstehen, zu interpretieren und in eine maschinenfreundliche Sprache zu ĂĽbersetzen. Die Arbeit mit dem Kunden des Codes (hier meinen wir den Kunden, Kollegen, Arbeitgeber usw.) ist immer nervös und abenteuerlich, weil sie selbst nicht wissen, was sie wollen, einfach denken und die Technologie als allmächtig betrachten. Wenn Sie sich jedoch als professioneller Programmierer ausgeben, mĂĽssen Sie nicht nur die SchlĂĽssel missbilligen, sondern auch aktiv mit Menschen, technischen Aufgaben, Anforderungen usw. arbeiten. Dies unterscheidet den Programmierer von einem einfachen Encoder. 

  • Kritisches Denken - die Fähigkeit, die Hauptsache in den Anforderungen hervorzuheben, sich Ihrem eigenen Code und dem Code eines anderen im Hinblick auf kontinuierliche Optimierung und Verbesserung zu nähern; Fähigkeiten, um die besten Wege zur Lösung von Problemen zu finden.
  • — . , , . — .

  • , , — , . , « », .
  • — , . , ?! , ! , , , , , . , , - . , , 00:09, + ;-)
  • — , . , , . 

  • — , , code style .
  • — . , , SDK, API, . — 6-12 .
  • — , , , . , -, ( , ). , , . 

Ich fordere Sie auf, nicht an Märchen ĂĽber introvertierte Programmierer zu glauben. Wenn Sie in der Programmierung wachsen möchten, halten Sie Ihren Introvertierten fern. Wenn Sie introvertiert sein möchten, stoĂźen Sie schnell auf die Obergrenze der beruflichen Entwicklung, da bei den Aktivitäten des Entwicklers weiterhin Kommunikation erforderlich ist. Selbst an einem entfernten Standort mĂĽssen Sie mit Kollegen kommunizieren, an Kundgebungen, RĂĽckblicken und Diskussionen teilnehmen. 

Das BedĂĽrfnis nach Fremdsprachenkenntnissen


Ist es möglich, auf die Entwicklung von Kenntnissen einer Fremdsprache (insbesondere Englisch) zu verzichten? Kann. Es reicht aus, die Syntax und die Wörter einer Programmiersprache zu lernen, Sie können ausschlieĂźlich auf Russisch denken und kommunizieren. Die Unkenntnis der Sprache wird in so vielen Unternehmen kein Hindernis fĂĽr das Karrierewachstum, die Entwicklung und die Kommunikation sein. 

Was gibt jedoch Fremdsprachenkenntnisse?

  • . , ( ).
  • .
  • , , , .. , .
  • .
  • -.
  • .

Es gab viele Diskussionen über Habré über ausreichende Englischkenntnisse, um in der IT-Branche arbeiten zu können. Meiner Meinung nach benötigen Sie ein Minimum an Mittelstufe oder Mittelstufe mit aktivem Sprechen, um nicht taub und stumm zu sein (zum Beispiel sind Sie gut in Grammatik, haben aber ein gutes Sprachniveau im Lehrplan, in der persönlichen Kommunikation oder in einem Praktikum).

Wo soll ich studieren


An modernen russischen Universitäten gibt es viele Programmierspezialitäten, es gibt Bachelor- und Masterprogramme, es gibt zusätzliche Bildungsformate. Wenn Sie sich immer noch für eine Universität entscheiden, lohnt es sich natürlich, eine spezielle Fakultät oder Physik, Mathematik und andere technische Fachgebiete zu besuchen.

Wenn Sie Programmierung als Hilfsmittel für Ihre Hauptspezialität benötigen, suchen Sie entweder nach einer angrenzenden Option (z. B. medizinische Kybernetik und Informatik) oder studieren Sie parallel zur Hauptspezialisierung.

Wenn Sie bereits eine Ausbildung haben, gibt es für Sie Selbstbildung, verschiedene Kurse, Online-Schulen, Firmenuniversitäten usw. Sie können das Programmieren mit diesen Lernwerkzeugen entweder völlig unabhängig oder sogar mit einem Mentor lernen.Über Weiterbildung können Sie hier lesen .


Ich mache Sie besonders auf sich aufmerksam: Die Hochschulbildung ist nach wie vor wichtig, weil sie für den Arbeitgeber von Bedeutung ist, wenn sie in ein anderes Land zieht, und sie bildet auch die Grundlage, die Grundlage, auf der wir uns schnell in eine neue Richtung entwickeln können.

DarĂĽber hinaus ist es nicht so wichtig, welche Programmiersprache Sie lernen, wie wichtig es ist, dass Sie sich mit Mathematik, Algorithmen, Computer, Netzwerk- und Serveradministration, Netzwerkprinzipien, Stacks usw. auskennen. Und diese Grundlage ist an Universitäten einfach nicht schlecht. 

Top BĂĽcher und Lernwerkzeuge


Jede Spezialität hat ihre eigenen Bücher und Ressourcen für das Training, aber es gibt Dinge, die jeder lesen sollte.

  • Die Kunst des Programmierens, Donald Knuth
  • Die Perlen der Programmierung, John Bentley
  • « »,
  • « . , », .
  • «. », .
  • « . Ebay?»,
  • « », .
  • « . »,
  • «. »,
  • « »,
  • « . »,
  • « -»,
  • «-. », ,

Diese Bücher enthalten nicht nur praktisch nützliches Wissen, sondern motivieren, prägen auch das Denken und die Weltanschauung des Programmierers. Und ich fordere Sie auf: Lesen, Lesen entwickelt Ihr Denken, Gedächtnis und macht Sie in jedem Interview unbesiegbar.

Aus Ihren Lieblingsressourcen:

  • Die Codecademy ist eine universelle interaktive Plattform fĂĽr den Unterricht von Programmiersprachen. Licks, Erfolge und Gamification sind alles Motivation.
  • Udacity ist eine englischsprachige Ressource zum Erlernen der Programmierung.
  • Codewars ist eine riesige Sammlung von Testaufgaben fĂĽr das Training von Fähigkeiten in jeder Programmiersprache.
  • Coursera - kein Kommentar, nur der beste Vortrag „Hodgepodge“.
  • MIT OpenCourseware ist ein Meer von Kursen des Massachusetts Institute of Technology.

Hier finden Sie eine gute Ăśbersicht ĂĽber die von einem anderen Autor zusammengestellten Kurse sowie weitere Einzelheiten zu russischsprachigen Kursen. 

Eine weitere riesige und frische Auswahl nĂĽtzlicher Online-Programme fĂĽr Programmierer.

Tipp: Auch wenn Sie manchmal zu faul zum Lernen sind, hören Sie sich die Vorlesungen zumindest im Hintergrund an, damit Sie in die Terminologie eintauchen und auf einige Momente achten, die während des intensiven Studiums nicht wahrnehmbar sind.


Mythen des Berufs


Es gibt viele Mythen und Gerüchte über Programmierer: über Charakter, Unhöflichkeit, Unfähigkeit, ein persönliches Leben aufzubauen usw. Dies sind jedoch Sonderfälle, die im Beruf zu finden sind. Zum Beispiel war ich einmal in der Nähe der Medizin und ich kann sagen, dass es auch viele verheiratete Frauen bei der Arbeit und bei der Arbeit gibt, viele harte Introvertierte und unhöfliche, aber professionelle Männer (eher gesteinigt). Und im Allgemeinen ist es schwierig, sich die "Enklave" des Glücks in einem bestimmten Bereich vorzustellen.


Und wenn der Programmierer auch ein Spieler ist ... Sie können immer ein Paar finden ;-)

Deshalb werde ich die vier beliebtesten Mythen analysieren.

  1. . . , - , , , . , , — , , . 500 . , . « » «» , . , : . 
  2. . , . , , , , , , , - , . , . , , ( !), , , , , , — , , , .
  3. . , . , , CTO, CIO .. . 
  4. . . ? ;-)


Wenn Sie lernen, Programmierer zu sein, werden Sie eines Tages definitiv alles beenden wollen, weil der Weg zu lang erscheint. Sie werden die monotonen Trainingsaufgaben satt haben, jede fehlgeschlagene Zusammenstellung wird langweilige, schmerzhafte Verzweiflung verursachen, Sie werden von Zeigern, Rekursionen und OOP-Prinzipien (gut oder erfolglosen Funktionsaufrufen) träumen. All diese Aufregung wird verrĂĽckt erscheinen, weit entfernt von nicht nur Ihrem ersten unabhängigen Projekt, sondern auch von der ersten UnternehmenszusammenfĂĽhrung ... 

Der Wunsch zu beenden ist das erste Zeichen dafĂĽr, dass Sie den richtigen Weg gehen, dass Sie wirklich angespannt sind und keinen Code mit der Copy-Paste-Methode von Google verspotten (nicht einmal mit GitHub!). Nur wenn Sie in einfachen Aufgaben so geschult sind, dass sie fĂĽr Sie unangenehm langweilig werden, können Sie sicher in eine neue Phase mit einer hervorragenden Wissensbasis eintreten. 

Der Tipp ist einfach: Nicht fallen lassen. Machen Sie eine Pause, schlafen Sie mit diesen Gedanken, geben Sie das Training für eine Woche auf und kehren Sie zurück. Sie selbst werden nicht bemerken, wie etwas in Ihrem Kopf „klickt“ und alles zusammenpasst. Hier ist es, die erste Zusammenführung, der erste Überprüfungscode, das erste Open Source-Commit, die erste Aufführung bei der Besprechung, Ihr Haustierprojekt, die ersten Aufgaben Mittlere Beiträge. Hör nicht auf - alles wird!


All Articles