Anzeichen für echte Senior-Programmierer und Methoden, um sie in freier Wildbahn zu verfolgen

Es gibt große Unterschiede in den Fähigkeiten der Entwickler. Und was als "Seigniorität" bezeichnet wird, sagt oft nichts über die wirklichen Möglichkeiten eines Programmierers aus. Was macht einige Entwickler objektiv besser als andere? Was unterscheidet sie von der grauen Menge?
Wenn ein Programmierer über fünf, zehn oder sogar fünfzehn Jahre „praktische Erfahrung“ verfügt, garantiert dies nicht unbedingt, dass er ein effektiver und produktiver Senior ist. In der Tat bedeutet dies nicht einmal, dass man es überhaupt so nennen kann.

Natürlich gibt es auch solche unglücklichen Menschen, aufgrund derer sich ein schlechter Ruf für erfolgreiche Senioren etabliert hat, die normalerweise nicht jung sind. Aber die jungen Seigneure sind auch nicht einfacher. Es gibt jedoch bestimmte Eigenschaften und Kenntnisse, die verschiedenen erfahrenen Programmierern gemeinsam sind.



Dies bedeutet nicht, dass die echten Lords einige Geheimnisse professioneller Fähigkeiten kennen. Sie zeichnen sich vielmehr durch eine besondere Wissensstruktur, ein besonderes Denken aus. Beide sind entwicklungsfähig.

Der Autor des Materials, dessen Übersetzung wir heute veröffentlichen, sagt, dass er über einige der Zeichen sprechen möchte, die dazu beitragen, einen echten Programmierer-Senor von einem Programmierer mit "Seigniorität" zu unterscheiden.

Programmierparadigmen


SOLID-Prinzipien, objektorientierte und funktionale Programmierung - dies sind drei Programmierparadigmen, drei Methoden zum Schreiben von sauberem Code, die einen wesentlichen Teil der konzeptionellen Ansätze für die Erstellung von Programmen ausmachen.

Viele Junior-Programmierer vermissen eine wichtige Sache in ihrer Arbeit, nämlich dass Programmieren eine Sprache ist. Dies bedeutet, dass das Programmieren mehr als ein Satz von Grammatikregeln ist. Dies ist ein Kommunikationsmittel, ein Phänomen, das auf viele Arten strukturiert werden kann. Programmierparadigmen helfen dabei, eine bestimmte Position zu bilden, wie der Code wahrgenommen wird und wie er Informationen vermittelt.

Jeder kann Code schreiben - genau wie jeder eine Nachricht in einem Messenger oder eine kurze Rezension eines Buches bei Amazon schreiben kann. Solche Texte können jedoch nicht mit Stephen Kings Romanen gleichgesetzt werden. Programmierparadigmen sind die treibende Kraft hinter dem Code, den Senioren schreiben. Dies macht die Paradigmen ähnlich zu den Handlungsstrukturen, denen Autoren der Fiktion folgen. Alle Sprachen sind von Formeln durchdrungen. Ältere Entwickler verstehen sie auf einer tiefen Ebene, die die Joons und die MIDLs noch nicht erreicht haben.

Fähigkeit zu schaffen


Wenn wir zum ersten Mal in die Welt der for Schleifen kommen und if else , stellen wir Fragen und versuchen, Antworten in Form von Code zu finden, der von irgendwoher in unser Projekt kopiert und eingefügt werden kann. Der Grad des Verständnisses dieses Codes kennzeichnet die Qualifikation von Junioren, die gerade erst anfangen und Anfänger in der Mitte sind.

Senioren gehen jedoch über das Kopieren hinaus. Sie können ohne die besondere Hilfe des allmächtigen Google etwas Neues schaffen. Sie wissen, was sie tun, sie verstehen, wie sich ihre Entscheidungen auf die Ergebnisse ihrer Arbeit auswirken. Sie können abnormale Situationen sehen oder zumindest vorhersehen. Sie verstehen die Probleme ihres Codes und wissen, wie sie damit umgehen sollen.

Wenn sie etwas nicht wissen, füllen sie die Wissenslücken und verstehen ernsthafte unklare Fragen, die nicht auf ihr oberflächliches Studium beschränkt sind. Sie verstehen alle Werkzeuge, die sie verwenden, sehr gut. Die Welt des Codes sieht in den Augen der Senioren nicht so aus wie in den Augen des Juni oder der Mitte.

Objektive Kritik


Jeder bevorzugt, was er weiß. Junioren und Mittelstufe tendieren stark dazu, sich auf ihre eigenen Erfahrungen zu konzentrieren und nicht auf das, was sich auf den von ihnen analysierten Code bezieht. Wenn sie einen Vorschlag machen oder etwas schätzen - die Grundlage all dessen ist ihre persönliche Präferenz. Dies ist ein Stil zum Schreiben von Code, zum Benennen von Entitäten und zum Denken.

Daran ist nichts auszusetzen. All dies ist Teil des beruflichen Wachstums. Um eine echte Objektivität der Urteile zu erreichen, muss ein Programmierer in viele Situationen gehen und selbst sehen, wie etwas, das in einem Fall inakzeptabel ist, in einem anderen Fall die beste Lösung für ein Problem sein kann. Dies entwickelt eine neutrale Sicht auf die Dinge. Es gibt keinen richtigen Weg, um Code zu schreiben. Es gibt nur Möglichkeiten, die in einer bestimmten Situation und in einem bestimmten Szenario wirksam sind. Ältere Programmierer verstehen das. Sie sind bereit zu akzeptieren, dass ihr Code möglicherweise kein „bester“ Code ist und dass er verbessert werden kann.

Senioren werden häufig zu produktiven Code-Qualitätskontrollern, indem sie auf die Unordnung hinweisen, die ihre Kollegen in Programmen verursachen, und auf die Schwachstellen in der Anwendungsarchitektur hinweisen. Sie können das Gesamtbild des Projekts sehen und die Möglichkeit völlig unerwarteter Probleme einschätzen. Sie sind jedoch nicht an einen Code-Schreibstil oder ein Programmierparadigma gebunden. Der Fokus ihrer Aufmerksamkeit liegt nicht auf den Werkzeugen, sondern auf dem Ergebnis.

Der Unterschied zwischen einem guten Programm und einem Arbeitsprogramm


Entwickler erstellen Code, dessen Hauptaufgabe darin besteht, zu starten. Einige von ihnen beschäftigen sich damit und glauben, dass Arbeitscode alles ist, was sie brauchen. Andere gehen noch einen Schritt weiter und bemühen sich sicherzustellen, dass der Code nicht nur funktioniert, sondern auch in hoher Qualität geschrieben ist. Die besten Entwickler sind die Profis, die unseren Code bearbeiten und neu schreiben. Sie stimmen möglicherweise zu, ein erfolgloses Design zu verwenden, aber sobald sie die Möglichkeit haben, es zu reparieren, werden sie es tun. Solche Entwickler verstehen den Unterschied zwischen einem guten und einem funktionierenden Programm.

Die meisten Manager sind nur an der Leistung des Programms interessiert. Aber gute leitende Entwickler sehen die Situation tiefer. Sie verstehen die versteckten Kosten technischer Schulden und können einen Code erkennen, der auf das Vorhandensein tiefgreifender Probleme im System hinweist. Sie wissen, wie sie die geschäftlichen Anforderungen an Arbeitsprogramme mit der Codequalität kombinieren können. Auf diese Weise können sie ein Gleichgewicht zwischen der termingerechten Lieferung von Projekten und der Einbeziehung zusätzlicher Funktionen finden, an die sich Projektkunden weit vom Beginn der Arbeit an erinnern.

Die Breite ihres Wissens, das Verständnis für Frameworks und Programmiersprachen machen sie zu Experten, wenn es darum geht, den Unterschied zwischen Arbeitsprogrammen und hochwertigen Programmen zu finden. Sie können beides schaffen. Dies gibt echten Senioren die Möglichkeit, kreative Lösungen für Probleme in einer Vielzahl von Situationen zu finden.

Lernfähigkeit


Der mittelmäßige Lehrer posiert. Ein guter Lehrer erklärt. Ein hervorragender Lehrer zeigt. Ein großartiger Lehrer ist inspirierend.
William Arthur Ward

Echte Senior-Entwickler haben eine Leidenschaft für Technologie, die ihre weniger erfahrenen Teamkollegen inspiriert und Anfängern hilft, erstklassige Profis zu werden.

Das Programmieren an sich ist eine Reihe bestimmter Ideen. Senioren haben die Fähigkeit, diese Ideen präzise und klar auszudrücken. Die Fähigkeit von Senioren, Code zwischen verschiedenen Schnittstellen und Umgebungen zu übertragen, zeigt ein echtes Verständnis ihrer gewählten Programmiersprache.

Um jemandem etwas beizubringen, benötigen Sie ein gewisses Maß an Fachwissen. Was als "Berufserfahrung" bezeichnet wird, kann im Lebenslauf eines Programmierers als Liste seiner abgeschlossenen Projekte oder als Zeit, in der er in verschiedenen Unternehmen gearbeitet hat, erscheinen. Aber die Fähigkeit, andere zu unterrichten, ist eine Fähigkeit, die nur jemandem zur Verfügung steht, der sein Handwerk wirklich besitzt.

Zusammenfassung


Ein echter Senior-Entwickler ist eine facettenreiche Kreatur, die manchmal, wenn es um Bereiche außerhalb seines Kerngeschäfts geht, wie ein Juni oder eine Mitte aussieht. Aber der Herr hat eine starke Basis auf dem Gebiet der Programmierphilosophie.

Die oben genannten Merkmale von Senioren - dies ist es, was in ihrer Persönlichkeit und in ihrem Fachwissen vorhanden ist. Dadurch können sie neue Technologien schneller erlernen als einige "durchschnittliche" Programmierer. Oft sind Senioren Menschen, die auf einen Blick das allgemeine Bild des Geschehens erfassen können. Sie können den Code ohne Vorurteile und Aberglauben betrachten.

Der wahre Lord wird seine Arbeitskollegen zu den Gewohnheiten führen, sauberen Code zu erstellen. Gleichzeitig wird es keine zerstörerische Kraft sein, die versucht, alles, was ihr begegnet, aus eigener Erfahrung in das prokrustäische Bett zu drücken. Diese Person akzeptiert ruhig die Fehler ihrer Kollegen und auch seiner eigenen. Er versucht, aus Fehlern zu lernen und zu lernen und weniger erfahrene Kollegen nicht zu demütigen.

Ein leitender Entwickler kann eine Person jeden Alters sein, er kann aus jedem Bereich der Informationstechnologie stammen, seine „praktische Erfahrung“ kann in einer beliebigen Anzahl von Jahren berechnet werden. Das Hauptmerkmal solcher Menschen ist, dass sie wirklich wissen, wie man Probleme löst, und dass sie in der Lage sind, langfristig zu denken.

Liebe Leser! Wenn Sie sich mit der Auswahl von Personal auf dem Gebiet der Informationstechnologie beschäftigen, teilen Sie uns bitte mit, wie Sie die Senioren "aufspüren".

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


All Articles