Traditionell werden Entwickler in der Technologiebranche je nach Qualifikationsniveau in vier Stufen eingeteilt: Junior, Middle, Senior und Team Lead. In zwei früheren Artikeln haben wir bereits alle Grundlagen dafür behandelt, wie es ist, ein Junior- und Mid-Level-Entwickler zu sein . Jetzt ist es an der Zeit, zur nächsten Abstufung überzugehen. Senior Developer, wie ist es, einer zu sein und wie unterscheidet sich ein Senior von einem Mid-Level-Programmierer? Lass es uns herausfinden.

Wer ist ein Senior-Entwickler?
In solchen Artikeln über Berufe und Spezialisierungen in der Softwareentwicklung müssen wir immer eine Art Haftungsausschluss machen und erklären, dass die Wahrnehmung und das Verständnis einer bestimmten Position je nach Unternehmen, der Branche, in der es tätig ist, und anderen Faktoren sehr unterschiedlich sein kann . Einige Leute, vor allem diejenigen, die eher konservativ sind, glauben, dass man sich nur dann „Senior“ nennen darf, wenn man über mehr als 10 Jahre Programmiererfahrung verfügt, was rechenschaftspflichtig ist. Das heißt, es werden nur die Jahre gezählt, in denen Sie tatsächlich als Vollzeitbeschäftigter programmiert haben. Sie können nicht mit der Zählung beginnen, als Sie im Alter von 12 Jahren zum ersten Mal versucht haben, mit Basic zu programmieren (wie es viele junge Programmierer tun, was echte Senior-Programmierer verärgert). ). Weniger konservativ sein, Viele Menschen glauben, dass man sich nach mehr als fünf Jahren Vollzeitarbeit als Softwareentwickler als Senior bezeichnen darf. Andererseits sind jahrelange Erfahrung nur eine Zahl, was wirklich zählt, sind Wissen, Fähigkeiten und anwendbare Erfahrung. Hier muss man wirklich Leistung erbringen, um den Senior-Titel zu verdienen, denn Senior Developer wird oft als allwissender, allmächtiger Coding-Zauberer angesehen. In der Wahrnehmung des Managements ist der Senior normalerweise derjenige, der weiß, wie man eine projektbezogene Aufgabe löst oder wie man den erforderlichen Code schreibt. Aber eine der wichtigsten Funktionen eines leitenden Entwicklers bei einem bestimmten Softwareentwicklungsprojekt ist die Kenntnis des Projekts selbst mit all seinen Problemen, Bedürfnissen, Nuancen usw. Die Fähigkeit, selbständig zu arbeiten, ist eine wichtige Eigenschaft eines Seniors. Das bedeutet, dass der Senior weiß, was und wann zu tun ist, und benötigt keine Aufsicht, um die von ihm erwartete Arbeit zu leisten. Und das ist in den Augen jedes Arbeitgebers eine durchaus wertvolle Eigenschaft, denn so können Sie diesem Entwickler eine projektbezogene Aufgabe übertragen und ihm den Rest überlassen. „Alles andere“ bedeutet: Bedürfnisse, Anforderungen und Einschränkungen für die zu erledigende Aufgabe herausfinden, den richtigen Ansatz finden, geeignete Instrumente finden, die große Aufgabe in kleinere Aufgaben aufteilen und diese an die mittlere und untere Ebene verteilen Entwickler usw. Es gibt noch einen weiteren wichtigen Aspekt, der Senior-Programmierer von Programmierern auf mittlerer Ebene und Junior-Ebene unterscheidet. Es liegt im Code, den sie schreiben, und in der Art und Weise, wie sie es tun. Normalerweise ist und sollte der Senior derjenige sein, der den klarsten, einfachsten und prägnantesten Code schreibt. Manchmal sogar so sehr, dass dieser Code übermäßig geradlinig und primitiv einfach aussieht. Dies liegt daran, dass Senior nicht nur den Abschluss der Aufgabe als Endergebnis berücksichtigen muss, sondern auch die Gesamtwirkung des neuen Codes auf die Codebasis des Projekts. Ältere Entwickler schreiben ihren Code mit Blick auf Wartbarkeit und Skalierbarkeit, und das ist ihre größte Stärke, die nur durch Erfahrung und nichts anderes erreicht werden kann.Welche Aufgaben hat ein Senior Developer?
Lassen Sie uns nun ausführlicher über einige der gängigsten und häufigsten Aufgaben eines Senior-Entwicklers sprechen, wobei wir uns natürlich auf die für Java-Programmierer typischen Aufgaben konzentrieren.- Identifizieren und Analysieren von Benutzeranforderungen;
- Priorisierung, Zuweisung und Ausführung von Codierungsaufgaben;
- Entwicklung von Java-Anwendungen;
- Überprüfung der Codearbeit auf Genauigkeit und Funktionalität;
- Codesegmente regelmäßig analysieren;
- Bleiben Sie über neue Technologien auf dem Laufenden und bringen Sie Nachwuchsentwicklern bei, wie sie diese nutzen können.
- Generieren von Ideen und Lösungen im Zusammenhang mit dem Entwicklungszyklus mit anderen Teammitgliedern;
- Übernehmen Sie die allgemeine Verantwortung für alle Entwicklungsarbeiten und den Projektcode.
Anforderungen an einen Senior Developer
Hier ist eine Liste der häufigsten und typischen Anforderungen an einen Senior Developer, die Sie erfüllen sollten, um diesen Job zu bekommen. Natürlich variieren die Anforderungen je nach Einstellungsrichtlinien des Unternehmens, den im Projekt verwendeten Technologien und Ihrer Programmiersprache.- Umfangreiche allgemeine Kenntnisse der Softwareentwicklung und ihrer Technologien;
- Gute Java-Kenntnisse;
- Erfahrung im Entwerfen, Erstellen und Testen von Unternehmensanwendungen;
- Fundierte Kenntnisse gängiger Java-Frameworks wie Spring, Spring Boot oder Java EE, JSF und andere;
- Erfahrung mit objektorientiertem Design (OOD).
- Gute Delegations- und Zeitmanagementfähigkeiten;
- Problemlösungsfähigkeiten;
- Gute Kommunikationsfähigkeiten;
- Starke schriftliche und mündliche Kommunikationsfähigkeiten;
- Die Fähigkeit, Termine einzuhalten und strategisch zu denken.
GO TO FULL VERSION