Durch Kollegen und Exit-Interviews habe ich gehört, dass ich in meinem kleinen Unternehmen für 3-10 Mal mehr Code "verantwortlich" bin als bei einem anderen Job. Ich versuche nach einer Art Fuzzy-Metrik zu suchen, mit der ich meine Arbeitslast mit anderen in meinem Bereich vergleichen kann.
Mit "Code-Verantwortung" meine ich nicht "Ich bin der einzige, der Bereich X der Codebasis kennt" (obwohl dies in einer Startumgebung leider häufig der Fall ist), sondern ich beziehe mich auf eine Zahl wie "code_base_size" / Anzahl_der_Entwickler ".
Gibt es Ressourcen, mit denen ich meine Arbeitslast genauer messen kann, als nur Codezeilen zu zählen?
Antworten:
Die einzige konkrete Maßnahme für einen angestellten Entwickler ist die Anzahl der Stunden, die für das Programmieren und Beheben von Fehlern aufgewendet werden, sowie das Geld, das Sie dafür erhalten. Wenn Sie an 6 Tagen in der Woche für 50.000 US-Dollar pro Jahr spät abends bleiben, haben Sie ein Problem. Unabhängig davon, für wie viele Codezeilen Ihr Chef die Verantwortung übernehmen möchte, werden Sie unter Berücksichtigung einer bestimmten Codequalität natürlich nicht mehr verarbeiten als Sie können. Die Entwicklung von Code mit schlechter Qualität ohne Komponententests ist eine gute Möglichkeit, mit viel mehr Code umzugehen, aber das Unternehmen muss den Preis für eine große technische Verschuldung bezahlen .
In kleinen Unternehmen sind Entwickler in der Regel für viel mehr Code verantwortlich als in großen Unternehmen . Der Faktor 3 bis 10, auf den Sie sich beziehen, erscheint mir realistisch.
quelle
Ich kenne ein dreiköpfiges Team, das eine Codebasis von 1,5 Millionen Zeilen verwaltet und darin nicht ertrinkt. Das wichtige Maß ist nicht, für wie viel Code Sie verantwortlich sind, sondern wie viel Code Sie in einem bestimmten Zeitintervall ändern müssen.
Es gibt auch den Risikobewertungswinkel. Wenn Sie die einzige Person sind, die einen Code kennt, wie hoch sind dann die Opportunitätskosten, die beim Gehen unter einem Bus verloren gehen würden? Kleine Unternehmen führen in der Regel keine solche Risikobewertung durch, dies bedeutet jedoch, dass der weitere Erfolg des Unternehmens dem Zufall überlassen bleibt.
quelle
Die Codebasisgröße / Anzahl der Entwickler hängt nicht von der Arbeitslast ab. Wenn Sie eine riesige stabile Codebasis haben, ist diese Metrik hoch. Wenn sich noch eine kleine Codebasis in der Entwicklung befindet, ist diese Metrik niedrig. Zeilenänderungen pro Zeiteinheit pro Entwickler hängen mehr von der Arbeitsbelastung ab. Aber selbst dann habe ich Tage damit verbracht, subtile Fehler aufzuspüren, deren Behebung eine Zeile war ...
quelle
Der Code sollte in der Verantwortung der Gruppe und nicht eines Entwicklers liegen. Support sollte jede Woche fair delegiert werden, es scheint dumm, ihn auf andere Weise zuzuteilen. Wenn dies nicht der Fall ist, sollten Sie mit Ihrem Management sprechen.
In der Situation, in der Sie einen Entwickler beschreiben, kann es schwierig sein, die Fristen einzuhalten, da in einem Bereich, in dem andere Entwickler unter Vertrag sind, sehr viel Unterstützung geleistet wird. Es ist eine sehr ineffiziente Managementstruktur.
Außerdem schlage ich vor, dass Sie sich von der Messung der Arbeitslast in Codezeilen entfernen. Mannstunden sind die einzig vernünftige Metrik, die mir einfällt
NB. Ich sage nicht gleich ich sage fair. Es ist auch erwähnenswert, dass es in Ordnung ist, sich auf bestimmte Aspekte der Codebasis zu spezialisieren, was natürlich vorkommt. Es ist nur ein Problem, wenn sonst niemand an diesem Code arbeitet.
quelle
Dies ist keine Programmierfrage, sondern eine Managementfrage.
Es gibt ein paar einfache Fragen, die zu beantworten sind und nichts mit Software zu tun haben.
Folgen Sie dann dieser Logik:
Dies ist eine übermäßige Vereinfachung, die zwei offensichtliche Mängel aufweist.
Aber du kommst auf die Idee.
quelle