Hey, Neuling, wir haben dich nicht eingestellt, damit du nur die dir zugewiesene Arbeit erledigst
(newsletter.kentbeck.com)- Der Wert eines N00b-Ingenieurs bemisst sich nicht an der Zahl der abgeschlossenen Aufgaben, sondern an seinem Potenzial, sich zu einem Ingenieur zu entwickeln, der künftig auch die Produktivität seines Umfelds steigert
- Senior Engineers teilen Neulinge in A ein, die eine Organisation verändern, in B, die zuverlässig Leistung bringen, und in C, die die Organisation womöglich innerhalb eines Jahres wieder verlassen; Neulinge müssen Signale senden, dass sie zu der Kategorie gehören, in die sie eingeordnet werden möchten
- Um zu B zu gehören, muss der Code funktionieren / der Fortschritt geteilt werden / die Arbeit in angemessener Zeit abgeschlossen werden, etwa innerhalb des Dreifachen der ursprünglichen Schätzung / und Reviewer sowie Operations-Verantwortlichen darf keine unnötige Arbeit entstehen
- A ist nicht die Person, die besonders viele Aufgaben abschließt, sondern diejenige, die unnötige Arbeit eliminiert / die 10% mit der größten Wirkung findet / das Design verbessert / kleine Änderungen fortlaufend einreicht und damit bei jeder Aufgabe mehr lernt
- Aktivitäten, die herausragende Leistung zeigen, kosten mehr Zeit, als einfach nur Aufgaben zu schließen; man sollte sich aber nicht endlos in Nebensächlichkeiten verlieren, sondern die eingesparte Zeit so investieren, dass sie einem selbst und den Kollegen nützt
Man stellt nicht die aktuelle Produktivität ein, sondern den künftigen Ingenieur
- Senior Engineers betrachten Neulinge grob in drei Kategorien
- A wird zum Treiber von Veränderungen, der auch die Produktivität seines Umfelds deutlich erhöht
- B liefert zuverlässig Ergebnisse und wächst schrittweise
- C könnte in einem Jahr nicht mehr in der Organisation sein
- Seniors müssen neben ihrer eigenen Arbeit einschätzen, zu welcher Kategorie jeder Neuling gehört
- A erhält so viel Unterstützung wie möglich
- B erhält genug Unterstützung, um ein reifer Engineer zu werden
- Für Personen, die voraussichtlich nicht bleiben, möchte man möglichst wenig Aufwand betreiben
- Die Aufgaben, die Neulingen gegeben werden, könnten Manager oder Tech Leads oft selbst schneller und einfacher erledigen
- Wenn nur die unmittelbare Produktivität zählen würde, gäbe es keinen Grund, Neulinge einzustellen; Unternehmen zahlen das aktuelle Gehalt als Optionsprämie, um sich den Engineer zu sichern, zu dem sich der Neuling später entwickelt
- Gelingt die Förderung, entsteht eine starke nächste Generation von Engineers; scheitert sie, müssen Seniors dieselbe Engineering-Arbeit auch noch in zehn Jahren selbst machen
An der Anzahl von Aufgaben allein kann man Neulinge nicht bewerten
- Wenn ein Neuling in einem Quartal 40 Aufgaben abschließt und ein anderer 20, lässt sich allein aus dieser Zahl nicht sagen, wer besser ist
- Selbst wenn alle Aufgaben gleich schwer wären, fehlten noch immer die nötigen Informationen, um A, B und C zu unterscheiden
- Ziel der Bewertung ist nicht, kurzfristigen Output zu vergleichen, sondern zu prüfen, zu welcher Art von Engineer sich ein Neuling entwickelt
Grundlegende Signale, die B und C unterscheiden
- Wichtiger als Aufgaben in der kürzestmöglichen Zeit zu schließen, sind die folgenden Bedingungen
- Der geschriebene Code funktioniert tatsächlich
- Andere wissen, woran man arbeitet
- Die Arbeit wird in angemessener Zeit abgeschlossen, etwa innerhalb des Dreifachen der ersten Schätzung
- Man erzeugt nicht unverhältnismäßig viel zusätzliche Arbeit für andere
- Um Hilfe zu bitten und damit Zeit anderer in Anspruch zu nehmen, ist in Ordnung, aber die folgenden Situationen sind schlechte Signale
- Den Reviewer unnötig viel Zeit zu kosten
- Wegen Fehlern den On-Call-Dienst eingreifen zu lassen
- Wegen einer selbst verursachten Störung das DevOps-Team ausrücken zu lassen
- Verhalten, das das Bewertungssystem manipulieren soll, etwa zu behaupten, man habe etwas getan, was man nicht getan hat, ist sofort ein C-Signal
- Jeder kann versehentlich ein C-Signal senden, aber dasselbe C-Signal darf nicht zweimal wiederholt werden; insgesamt müssen die Signale eher zu B passen
Lerngeschwindigkeit unterscheidet A von B
- Unter den Neulingen, die mindestens zu B gehören, entscheidet nicht die Zahl der abgeschlossenen Aufgaben darüber, wer A ist, sondern wie viel bei jeder Aufgabe gelernt wird
- Dass die aktuelle Produktivität eines Neulings unter der eines Seniors liegt, ist zu erwarten; wichtig ist nicht die Produktivität selbst, sondern die Geschwindigkeit, mit der sie steigt
Verhalten, das zu A gehört
- Die folgenden Verhaltensweisen gehen über das bloße Erledigen einer Aufgabe hinaus und sind A-Signale, weil sie Lernen und organisatorische Produktivität erweitern
- Eine überzeugende Begründung liefern, warum die betreffende Aufgabe gar nicht erledigt werden muss
- Daten analysieren, um die 10% der Arbeit zu finden, die 90% des Gesamtnutzens erzeugen
- Dieselbe Aufgabe auf mehrere Arten umsetzen
- Ein besseres Design entdecken und eine Reihe von Diffs einreichen, die nicht nur die Implementierung, sondern auch den umliegenden Code vereinfachen
- Wenn man schwierige Änderungen vorab leicht macht und danach die leichter gewordene Änderung umsetzt, wird das besser bewertet
- Statt eines großen Diffs mehrere kleine Diffs nacheinander einreichen
- Tägliche Diffs bringen zusätzliche Vorteile
- Interne Tools schreiben, die ähnliche Aufgaben vereinfachen
- Wenn ähnliche Aufgaben später nicht wieder auftreten, ist das eher ein Minuspunkt
- Diffs einreichen, die auch für andere Teams oder Codebereiche nützlich sind, ohne die offizielle Aufgabe zu verzögern
- Das Gelernte interessant / nützlich / überzeugend dokumentieren
- Mit Einsicht reviewen und schnell auf Feedback reagieren
- Robuste Unit-Tests einbeziehen
- Es gibt sehr viel mehr Wege, herausragende Leistung zu zeigen, als bloß Fehler zu vermeiden
Angemessene Zeit ist wichtiger als die Minimalzeit
- Aktivitäten, die als A-Signal gelten, brauchen mehr Zeit, als nur die minimal nötige Implementierung zu liefern, um eine Aufgabe zu schließen
- Das ist keine Erlaubnis, unbegrenzt Zeit auf interessante Nebenschauplätze zu verwenden
- Offizielle Aufgaben müssen immer in angemessener Zeit abgeschlossen werden, aber nicht zwingend in der absolut kürzesten Zeit
Eingesparte Zeit in sich selbst und die Kollegen reinvestieren
- Es kann sich anfühlen, als fehle die Zeit für zusätzliches Lernen und Verbesserungen, doch mit Fähigkeiten wie Zeitmanagement / Management des Task-Backlogs / Management der Diff-Warteschlange lässt sich das Arbeitstempo steigern
- Die so eingesparte Zeit sollte man in das eigene Wachstum investieren – auf eine Weise, die auch anderen zugutekommt
4 Kommentare
Eigentlich sollte man wohl darüber sprechen, wie man Berufseinsteiger einstellt, die das Potenzial haben, zu A-Playern zu werden, und wie man Berufseinsteiger mit Potenzial zu A-Playern trainiert...
Der Inhalt des Artikels ist ziemlich provokant..
A, die die Organisation verändern / B, die stabile Ergebnisse liefern / C, bei denen die Wahrscheinlichkeit besteht, dass sie innerhalb eines Jahres gehen
Dass man A und B unterscheidet, kann ich nachvollziehen, aber bei C dürfte es viele geben, die zugleich A oder B und trotzdem C sind ...
Scheint ein Unternehmen mit äußerst hoher Mitarbeiterzufriedenheit zu sein, das Leistung und Einfluss sofort und direkt beim Gehalt berücksichtigt.
Wenn man das sieht, könnte „wahrscheinlich innerhalb eines Jahres weg“ in Wirklichkeit auch nur eine beschönigende Umschreibung für eine Kündigung sein...
Ach so, stimmt. Hahahahahahaha, an eine Kündigung hatte ich gar nicht gedacht.