Gibt es einen gut angenommenen Begriff für einen Entwickler mit Fähigkeiten zwischen einem Junior- und einem Senior-Entwickler?

Die pauschalen Begriffe „Junior“ und „Senior“ für Entwicklungsrollen abstrahieren viele Details der Fähigkeiten eines Entwicklers, die mir je nach Kontext gut oder schlecht erscheinen. So wie ich es verstehe, ist "Senior" der konkreteste Begriff, und es gibt spezifischere Verständnisse und Erwartungen, die leichter aus dem Ausdruck allein angenommen / abgeleitet werden können.

Es gibt jedoch zusätzlichen Fluss mit dem Begriff "Junior". Ja, es gibt den Begriff „Einsteiger“, aber der ist nicht so weit verbreitet wie der Begriff „Junior“. Ich habe mit "Junioren" gearbeitet, die praktisch nichts über die Technologie wissen, außer einfache Tutorials zu absolvieren, Junioren, die keine Erfahrung mit anderen Technologien außer einer Sprache oder Umgebung haben und keine Quellcodeverwaltung oder irgendetwas anderes kennen, Junioren, die zahlreiche kennen Technologien und ausreichend fundiertes Verständnis für Architektur haben, um wertvolle Meinungen im Kontext eines Projekts zu haben, und Junioren, die über weitreichende Fähigkeiten verfügen und Senioren nahe kommen, aber noch nicht ganz so weit sind. Alle betrachten sich wohl oder übel als "Junior", was mir unpassend erscheint.

Zur Veranschaulichung verwende ich Major League Baseball:

  • Anfänger --> Einstiegsentwickler
  • Klasse-A-Spieler -> Junior-Entwickler
  • Double-A-Spieler -> Junior-Entwickler
  • Triple-A-Spieler -> Junior-Entwickler
  • Spieler der Major League --> Senior Developer

Es gibt eine Menge Abstraktion, die die Fähigkeiten eines „Junior“-Entwicklers über die anderen Begriffe hinaus entweder überbieten oder unterbieten kann.

Gibt es also einen kommunikativen Begriff oder Ausdruck, der das Qualifikationsniveau eines „Junior“-Entwicklers genauer ausdrückt als der allgemeine Begriff „Junior“? Mir ist klar, dass es eine schwierige Rolle ist, diese Rolle zu definieren, aber ich war neugierig.

Baseballfähigkeiten sind viel einfacher zu quantifizieren und zu messen als Programmieren.
Ich verstehe das, daher mein Kommentar am Ende. Es war nur, um meinen Standpunkt zu veranschaulichen.
Ich habe gesehen, dass der Begriff „Mittel“ in Bezug auf Entwickler verwendet wird.
Einfach nur „Entwickler“ oder „Java Developer“ für Java.
Auch das „Mittelgewicht“ taucht auf. Was das bedeutet, ist mir allerdings ebenso schleierhaft wie für „Senior“ und „Junior“.
Auch Junior Senior ist meiner Meinung nach nicht gut etabliert.
Auf keinen Fall Spieler der Major League --> Senior Developer. Wenn Sie gut genug sind, um eingezogen zu werden, sind Sie gut. Anfängerspieler -> Little League.
Was ist mit der Berücksichtigung jahrelanger Erfahrung? Es beschreibt nicht direkt Fähigkeiten, aber es kann ein guter Ersatz sein und einfacher zu definieren, so dass jeder weiß, was es bedeutet.
UK-zentriert, aber das ist die Hierarchie, die ich gesehen habe. Trainee Developer (optional, kann unter Junior subsumiert werden. Setzt < 1 Jahr Erfahrung voraus). Junior-Entwickler (impliziert <2-3 Jahre je nach Fähigkeit). Software-Entwickler (manchmal auch Mid genannt. Bedeutet normalerweise irgendwo zwischen 18 Monaten und 8-10 Jahren). Senior Developer (nicht gesehen mit weniger als 3 Jahren Erfahrung, kann insgesamt beliebig viele Jahre haben. 5-6 Jahre normales Beförderungsfenster). Leitender Entwickler (mir ist noch keiner mit weniger als 5 Jahren Erfahrung begegnet). Alle Erfahrungen beziehen sich auf die Berufserfahrung nach dem Abschluss.

Antworten (2)

Berufsbezeichnungen sind völlig unternehmensabhängig und in Bezug auf die Beurteilung der Fähigkeiten oft bedeutungslos.

Ich habe für ein Unternehmen gearbeitet, in dem JEDER leitender Ingenieur war, einschließlich des Typen, der die Werkstatt sauber hielt, und der Auszubildenden von der örtlichen technischen Hochschule. Besser sah es für das Unternehmen aus, das sein 30-köpfiges Team von Senior Engineers und E-Mails bewarb.

Bei der Auswahl von Berufsbezeichnungen für ein Unternehmen ist unter anderem zu berücksichtigen, wie sie nach außen wirken. Verleihen sie dem Unternehmen ein prestigeträchtiges Aussehen? Können sie in der Werbung verwendet werden? etc,.

Es gibt keine allgemein akzeptierte Titelhierarchie. Das Beste, in dem ich gearbeitet habe, war dreistufig.

Junior-Ingenieur

Techniker

Leitender Ingenieur

Aber schon damals bekam einer der Senior-Jungs seinen Titel (und sein Gehalt) eher durch die Büropolitik als durch seine Fähigkeiten.

Ich würde sagen, Intermediate Developer ist ein guter Mittelweg. Typischerweise würde jemand zwischen 2 und 10 Jahren Erfahrung in diese Gruppe fallen und wahrscheinlich fällt eine gute Mehrheit der Entwickler in der Belegschaft darunter. Hier ist eine beispielhafte Stellenausschreibung. Wie Sie hier sehen können, suchen sie jemanden mit mindestens 2-5 Jahren Erfahrung.

Typischerweise können diese Entwickler mit nur wenig Aufsicht Code für Routineaufgaben schreiben, sind jedoch normalerweise nicht zu sehr in die Gesamtarchitektur des Projekts involviert, es sei denn, sie stehen unter strenger Aufsicht. Beachten Sie, dass dies eine Verallgemeinerung ist, und offensichtlich gibt es Entwickler, die viel mehr Erfahrung schneller sammeln als andere, oder sie sind möglicherweise auf einem höheren Niveau für ihre bevorzugte Sprache, aber insgesamt können sie eher fortgeschritten sein.

Die Progression kann auch Junior Developer, Developer, Senior Developer sein. Oder wenn Sie mehrere Stufen wünschen, Trainee, Junior, Geselle oder Intermediate Developer, Developer, Senior Developer.