Entwickler Todsünden


Kurz darüber, was in der modernen Entwicklungswelt am meisten beunruhigt und warum Sie beweisen, lernen, testen und nicht faul sein müssen.


Ich bin Entwickler, habe den Code aber schon lange nicht mehr geschrieben


Nichrome du bist kein Entwickler.


Wenn Sie der Meinung sind, dass das Schreiben von Code eine optionale Voraussetzung für einen guten Entwickler ist, verlassen Sie bitte diesen Planeten. Es gibt viele Möglichkeiten, davon zu leben, aber hören Sie auf, Code zu schreiben. Sie können zum Management gehen, Sie können zum Personalmanagement migrieren, Sie können eine hohe Position einnehmen oder Sie können einfach zum Kloster gehen. In jeder dieser Situationen sind Sie jedoch kein Entwickler mehr, wenn Sie keinen Code mehr schreiben.


Warum? Erstens: Der Code ist kein Fahrrad. Wenn Sie nicht üben, vergessen Sie ihn. Zweitens: Die Entwickler sind sehr beleidigt, wenn „eine Art Manager“ versucht, sich als ihre eigenen auszugeben (ja, im Allgemeinen gilt dies für jeden Beruf). Drittens: Es ist schädlich für die CSV. Wenn Sie in einen anderen Bereich / eine andere Branche gezogen sind, erweitern Sie Ihre Fähigkeiten erneut mit Charisma und ziehen Sie keine Verweise auf vergangene Erfolge (siehe die letzte Sünde).


Aus den Beispielen.


  1. Ich war einmal bei einem Interview im amerikanischen Büro. Dort begann in einer der Phasen ein Gentleman, der sich als CEO vorstellte, heftiges Spiel nach Ruby um ein Stück Papier (im Sinne von vorbereiteten Vorlagen in Google). Bei Fragen, ob er den Code selbst schreibt und warum die Antragsteller so unanständig sind, drehte er das Gespräch taktvoll um und bat, sich auf Aufgaben zu konzentrieren.
  2. Es gibt einen bekannten Ressourcenmanager, der in seiner Freizeit als Psychologe arbeitet. So schreibt dieser Herr bis jetzt den Code in seiner Freizeit und kann den Kandidaten manchmal mit neugierigem Wissen in einem scheinbar untypischen Bereich sehr überraschen. Es scheint kein Programmierer zu sein, aber jeder nimmt es für sich.

Ich habe Tests durchgeführt. Warum die Anwendung mit meinen Händen testen?


Es ist eine schwere Sünde, sich ausschließlich auf Testergebnisse zu verlassen (auch wenn es sich um End-to-End-Dummies für die Integration handelt). Mindestens einmal während der Entwicklung einer Funktion müssen Sie Ihre Hände nehmen und verwenden, um durch den gesamten Zyklus dieser Funktion zu klicken. Erstens sind Sie ein wenig besser mit der Plattform vertraut und wissen, wie der Benutzer sie sieht und nicht, wie sie im Inneren angeordnet ist. Und zweitens folgen Sie einem neuen Szenario und gesundem Menschenverstand und finden möglicherweise etwas Offensichtliches, das für Autotests jedoch unsichtbar ist. In jedem Fall sind Autotests eine Ergänzung zur manuellen Überprüfung durch den Entwickler und kein Ersatz dafür.


Ich werde sofort über die Funktionen sprechen. Ich spreche nicht von vollständigen manuellen Tests durch den Entwickler, dafür gibt es speziell geschulte QS-Leute. Ich spreche über die Notwendigkeit, ein lokales Projekt auszuführen und die Mindestprüfung auf Änderungen. Und dann in Autotests, auf der Jungfrau, Bühne, Preprod und Prod.


Ja, es sollte Holivars über die Komplexität vieler Projekte und ihre "Unfähigkeit" geben, lokal ausgeführt zu werden. Persönlich glaube ich nicht an solche epischen Projekte. Aber in Faulheit und Gier - glaube ich. Lassen Sie uns daher kurz auf die möglichen Probleme beim lokalen Starten eines Projekts eingehen.


  1. Ein kleines unabhängiges Projekt - es gibt keine Hindernisse für Patrioten!
  2. Viele externe Integrationen. Sie haben also Sandkästen für jeden von ihnen. Entweder haben Sie Stubs oder lokale Emulatoren externer Dienste. Oder Sie haben große Probleme, die bald behoben werden.
  3. Viele Microservices. Das Endergebnis ist der vorherige Absatz. Der einzige Unterschied besteht darin, dass sich die Möglichkeiten zur lokalen Emulation erweitern. Zum Beispiel eine Reihe von Dockern mit echten Microservices anstelle von Stubs.
  4. Für das Projekt werden viele Daten benötigt. Sehr selten benötigen Sie jedoch ein gesamtes Multi-Terabyte-Datenarray für die Entwicklung. Und wenn Sie es noch brauchen, werden dafür mehrere Instanzen für Entwickler erstellt. Zum Beispiel 2-3 große Instanzen pro Team von 10-15 Entwicklern. Also ja, es ist nicht sehr bequem und teuer für das Geschäft, aber ansonsten zahlen Sie noch mehr für die Entwicklung der Produktion, die unabhängig von den Wünschen der Top-Manager durchgeführt wird.
  5. Ein monströser Monolith, der auf einem bestimmten Eisen und nur in der richtigen Mondphase arbeitet. Wenn ja, dann sind Sie höchstwahrscheinlich in einem blutigen Unternehmen und der gesunde Menschenverstand funktioniert dort nicht.

Ich weiß schon genug und kann nicht mehr lernen


Kurzum: "Wer sich nicht entwickelt, erniedrigt sich."


In den theoretischen Wissenschaften gibt es Fälle, in denen Sie die Basis herausfinden und dort anhalten können. Dort ist alles mehr oder weniger stabil, bewährt und unveränderlich. Die physikalischen Gesetze ändern sich glücklicherweise nicht alle fünf Jahre. Wenn Sie also nicht auf dem neuesten Stand der Wissenschaft sind, können Sie leben und sogar arbeiten. Hier sind zum Beispiel die Integrale entlang der Kontur: Feynman hat sie in Los Alamos nach dem Zweiten Weltkrieg gelöst und jetzt werden sie mit ungefähr denselben analytischen Methoden gelöst.


Aber mit Entwicklung und Programmierung wird es nicht so funktionieren. Eine einzige unveränderliche göttliche Programmiersprache wurde noch nicht gefunden (das Konzept der Avalanche ist interessant, aber noch nicht offen). Die Geschwindigkeit der Technologie ändert sich von einigen Jahrzehnten bei Betriebssystemen und Datenbanken auf einige Monate bei JavaScript. Und wenn Sie sich nicht entwickeln, können Sie in ein oder zwei Jahren so ziemlich das Niveau verlieren, und in den fünf Jahren erhalten Sie einfach Null.
Um nicht zu ganzheitlich über die Geschwindigkeit des Technologiewandels zu sein, werde ich einige Beispiele nennen. Es gibt ein Buch über die Abfüllung von Kernigan und Soldering 1992. Wenn Sie es verwenden, können Sie Unix gut lernen und sind nicht sehr überrascht über die Änderungen, die 15 Jahre später vorgenommen wurden. Sie können Tom Kites Buch über Oracle 8 nehmen, das um 2000 veröffentlicht wurde, und sich nicht sehr über die Unterschiede in Version 18c wundern. Aber jedes Buch über JS vor fünf Jahren kann sicher zum Anzünden gebracht werden.


Ich bin cool genug und kann es nicht beweisen


Meiner Meinung nach ist dies das schwierigste und häufigste.


Leider oder zum Glück müssen Sie Ihr ganzes Leben lang Ihre Fähigkeiten, Ihre berufliche Eignung und Ihre geistige Gesundheit unter Beweis stellen. Wenn Sie damit aufhören, stellen Sie möglicherweise fest, dass Sie entweder im Ruhestand sind, an Demenz leiden oder einfach ausgebrannt sind. In jedem Fall sollten Sie einen Spezialisten aufsuchen.


Die Häufigkeit der Beweise ist unterschiedlich. Bei Freunden und Verwandten ist ein Nachweis nicht so oft erforderlich. Und bei Fremden - regelmäßig und vollständig. Die Orte, an denen Beweise benötigt werden, sind sehr vielfältig: bei Interviews, auf Konferenzen, bei neuen Kollegen, neuen Liebhabern ... sogar im Laden, wenn der Kauf etwas komplizierter ist als ein Hocker.


Wenn Sie der Meinung sind, dass eine Geschichte über Ihre Erfahrung ohne Bestätigung der Fähigkeiten normal und ausreichend ist, besuchen Sie einen benachbarten Planeten. Was mich betrifft, nennt man das Fopping und Arroganz.


In Bezug auf Beispiele in diesem Bereich ist es eng, da die meisten davon negativ sind und ich denke, der Leser selbst wird sich an etwas Passendes aus seiner Erfahrung erinnern. Und mit dem Positiven ist es noch schwieriger, da sie nicht bemerkt werden und einfach zu einem konstruktiven Dialog führen. Deshalb vertraue ich der Lebenserfahrung des Lesers und hoffe, dass jeder ein würdiges Beispiel geben wird.

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


All Articles