Ich bin ein Teamleiter mit mehr als 5 Entwicklern. Ich habe einen Entwickler (nennen wir ihn A ), der ein guter Programmierer ist, der sauberen, leicht verständlichen Code schreibt. Es ist jedoch etwas schwierig, mit ihm umzugehen, und manchmal frage ich mich, ob er wirklich unterdurchschnittlich ist oder nicht.
- Unser Unternehmen verlangt von den Entwicklern, dass sie den Arbeitsfortschritt in dem von uns verwendeten Bug-Tracker angeben, nicht nur, um die Programmierer zu überwachen, sondern um die Stakeholder über den Fortschritt auf dem Laufenden zu halten. Die Sache ist, dass A einen Aufgabenfortschritt erst aktualisiert, wenn er erledigt ist (vielleicht 3 Wochen, nachdem er zum ersten Mal bearbeitet wurde), und dies lässt alle sich fragen, was in der Mitte der Entwicklungswoche vor sich geht. Er würde seine Gewohnheit trotz wiederholter Prüfung nicht ändern. (Es ist in Ordnung, Entwickler hassen Papierkram, ich auch)
- In den letzten 2-3 Monaten hat er häufig Urlaub wegen verschiedener Ereignisse - entweder ist er krank oder muss viele persönliche Ereignisse besuchen usw. (Es ist in Ordnung, schlechte Dinge passieren in einer Kette. Es ist nur ein Zufall.)
- Wir definieren Sprints oder Roadmaps für jeden Monat. Und zu Beginn des Sprints besprechen wir den Arbeitsaufwand, den die Entwickler in einem Sprint leisten müssen, und die Zeit, die sie für die einzelnen Aufgaben benötigen . Normalerweise wird er nicht alle schaffen. (Es ist in Ordnung, die Entwickler haben regelmäßig Termine verpasst, die nicht auf ihre Schuld zurückzuführen sind).
- Ich wohne in Singapur. Ich bin mir nicht sicher, ob das wichtig ist. Ja, Asiaten sind bekanntermaßen zurückhaltend, aber spielt das eine Rolle?
Wenn nur ein oder zwei der oben genannten Ereignisse eintreten, habe ich nicht das Gefühl, dass A nicht ausreichend ist, aber sie treten alle zusammen auf. Also habe ich das Gefühl, dass A unterdurchschnittlich ist und vielleicht - Gott bewahre - nachlässt.
Dies ist nur ein Gefühl, das auf meiner jahrelangen Erfahrung als Programmierer beruht. Aber ich könnte mich irren.
Es ist bekanntermaßen schwierig, die Arbeit eines Programmierers zu messen, da nicht alle beiden Aufgaben gleich sind, und es fehlt ein Standardziel, um das Engagement eines Programmierers für Ihr Unternehmen zu messen. Es ist absolut unmöglich zu sagen, ob der Programmierer seinen Job macht oder nachlässt. Alles, was Sie tun können, ist, ihnen zu vertrauen - ja, ihnen zu vertrauen und ihnen Autonomie zu geben, ist die beste Möglichkeit für Programmierer zu arbeiten. Ich weiß das. Beginnen Sie also keinen Vortrag darüber, warum Sie Ihren Programmierern vertrauen müssen viel - aber wenn sie dein Vertrauen missbrauchen, kannst du es wissen?
Ergebnis:
Ich habe ein klares Gespräch mit ihm über meine Wahrnehmung seiner Leistung. Er war empört, als ich vorschlug, dass ich das Gefühl hatte, dass er nicht auf seinem besten Niveau auftrat. Er fühlte, dass dies ein völlig unfaires Gefühl war. Ich antwortete dann, dass dies mein Gefühl war und ich wusste nicht, ob mein Gefühl richtig war oder nicht. Er hätte nichts davon und beendete die Diskussion sofort.
Bevor er ging, sagte er, dass er "versuchen würde, der Firma mehr zu geben", in einem sehr kalten Ton. Ich war überrascht von seiner Reaktion. Ich bin mir sicher, dass ich ihn in gewisser Weise beleidigt habe. Ich bin mir nicht sicher, ob das das Richtige war, um so offen mit ihm umzugehen.
Meine Frage ist: Wie können Sie feststellen, ob Ihre Programmierer unterdurchschnittlich abschneiden? Sicher gibt es erfahrene Teamleiter, die das besser wissen als ich?
Zusätzliche Hinweise:
- Ich hasse Mikromanagement. Alles, was wir für unseren Softwareprozess haben, ist Sprint (wo Aufgaben priorisiert und zugewiesen werden und am Ende des Monats eine Überprüfung des Arbeitsaufwands). Entwickler müssten die Aufgaben aktualisieren, wenn sie täglich ausgeführt werden.
- Es gibt kein Stand-up-Meeting oder ähnliches. Hauptsächlich, weil wir die Freiheit haben, von zu Hause aus zu arbeiten, und jeder diese Freiheit schätzt.
- Obwohl ich derjenige bin, der den Termin festlegt, werden die Entwickler den Kostenvoranschlag für jede Aufgabe vorlegen und ich werde - basierend auf dem Kostenvoranschlag - die Aufgaben bestimmen, die in einen bestimmten Sprint gehen. Wenn sie die Aufgaben am Ende des Sprints nicht erledigen können, schiebe ich sie zum nächsten. Theoretisch kann man also während des gesamten Sprints nur 1 oder 2 Aufgaben erledigen und dann die verbleibenden 99 Aufgaben auf den nächsten Sprint verschieben, und trotzdem ist er in Ordnung, solange dies gerechtfertigt ist - in Form von täglichen Aktualisierungen des Arbeitsfortschritts