Mein Teamleiter hat die schreckliche Angewohnheit, sich mit dem Datenbankschema herumzuschlagen und Änderungen vorzunehmen, die schwerwiegende Schäden an der Codebasis verursachen würden (ohne mich wirklich zu befragen, wie sich die Änderungen auf die Codebasis auswirken würden).
Normalerweise würde ich einfach damit leben, aber wir haben eine Frist in 2 Wochen und das ist passiert, seit ich vor anderthalb Monaten angefangen habe. Ich wurde angezogen, um die Entwicklung des Projekts zu beschleunigen.
Aufgrund der Frist stelle ich bereits mehr als 60 Stunden in der Woche ein und habe nicht mehr die nötige Energie, um damit umzugehen (ich habe es in gewisser Weise bereits versucht). Wir sind nur ein 2-Mann-Team, und neben der täglichen Änderung der Datenbank hat er nicht viel im Sinne der tatsächlichen Entwicklung (Codierung) beigetragen.
Momentan habe ich das Gefühl, ich mache die ganze Arbeit und muss 'reparieren', was er mit seinen Änderungen bricht.
Wie geht man damit um? Ich habe bereits mit unserem Manager über seine mangelnden Anstrengungen in der Entwicklungsabteilung gesprochen. Er war 6 Monate länger dort als ich, aber ich habe 95% des Codes geschrieben, wenn Sie die fünfte Normalform-Datenbankmonstrosität ausschließen, die er "beigesteuert" hat.
Irgendwelche Vorschläge?
Obduktion:
Am Freitag hatten wir ein Gespräch mit dem Manager, und ich machte meine Sorgen bekannt. Dies führte zu einer gewissen Konfrontation, aber insgesamt hatte ich das Gefühl, dass der Manager auf meiner Seite stand. Zumindest haben wir jetzt unsere Daten eingefroren. Mal sehen, wie es von hier aus weitergeht.
quelle
Antworten:
"Deadline ist in zwei Wochen. Wir müssen das Schema einfrieren, wenn wir es erreichen wollen."
quelle
Im Gespräch mit dem Manager UND dem Entwickler bei derselben Besprechung:
"Datenbank- und Codeänderungen müssen gleichzeitig angezeigt werden. Wenn Sie die Datenbank ändern, müssen Sie auch die Codebasis ändern und testen. Andernfalls übermitteln Sie fehlerhafte Commits. Dies ist inakzeptabel, wenn wir die Frist einhalten möchten. Ich werde den Code nicht mehr reparieren Ich werde die Änderungen einfach zurücknehmen und Ihnen eine E-Mail-Nachricht hinterlassen, da ich außerhalb der von mir zugewiesenen Arbeit keine Nachforschungen anstellen und Probleme beheben kann und immer noch damit rechne, dass die Frist eingehalten wird. "
Viel schwieriger, wenn Sie keinen Testplan haben ...
quelle
Sie müssen energischer sein und sicherstellen, dass Sie sich bald (wie gestern, vorgestern oder im letzten Monat) für ein Schema entscheiden und vorwärts gehen. Es gibt keinen vernünftigen Weg, um eine App mit einer Datenbank, die ein sich bewegendes Ziel ist, weiterzuentwickeln.
quelle
Sie müssen ihn konfrontieren und ihm erklären, wie sich seine Änderungen auf die Codebasis und damit auf die Projektzeiträume auswirken. Überzeugen Sie ihn, dass er die Auswirkungen seiner Änderungen berücksichtigen muss, bevor er sie ausführt. Lassen Sie ihn auch in Anwesenheit Ihres Managers zustimmen, dass er für Verzögerungen verantwortlich ist, die er durch dieses Verhalten verursacht
quelle
Wenn der Teamleiter keine vernünftige Person ist (und er / sie nach Ihrer Beschreibung seines Verhaltens nicht vernünftig klingt), sprechen Sie mit Ihrem Manager und erklären Sie ihm, dass Sie die Frist nicht einhalten, wenn die Dinge so laufen. Bitten Sie ihn, Stellung zu beziehen und sicherzustellen, dass Ihr Teamleiter dies weiß, indem Sie eine Besprechung abhalten, in der der Manager die Erwartungen festlegt.
Sie sollten Ihre Argumentation auch in Bezug auf den mangelnden Beitrag Ihres Teamleiters zur Entwicklung vorantreiben. Beide Probleme müssen gelöst werden, um das Projekt zum Erfolg zu führen.
quelle
Sie müssen Ihrem Team eine gewisse Zurückhaltung aufzwingen, aber das kann schwierig sein, in Ihrer Position darin zu spielen.
Ein nützlicher Weg, dies in Angriff zu nehmen, könnte eine strengere dokumentierte Änderungskontrolle sein. Sie können dies tun, indem Sie darauf bestehen, dass derzeit Ad-hoc-Änderungen Ihre Fähigkeit gefährden, die Systemaktualisierungen auf eine Weise zu verwalten, die keine unvorhergesehenen und terminbedrohlichen Konsequenzen hat (was zutrifft). Bestehen Sie daher darauf, dass alle Änderungen mit einer Dokumentation versehen sind, aus der die vorgeschlagene Änderung und deren Auswirkungen auf alle anderen Codes und Strukturen hervorgehen. Sie werden erstaunt sein, um wie viel das Volumen der durchgeführten Änderungen reduziert wird :-)
quelle
Haben Sie eine Retrospektive mit dem Team durchgeführt? Wenn nicht, halte eins. Wenn Sie dies tun, identifizieren Sie die ungeplanten Änderungen an der Datenbank als Problem. Geben Sie die Kosten an, die Ihnen und anderen in Bezug auf das Risiko und die Qualität des Arbeitslebens entstehen. 60-Stunden-Wochen-Dauerbetrieb sind nicht nachhaltig. Wenn Sie nicht in der Lage sind, Ihr Entwicklungstempo aufrechtzuerhalten, sind Sie nicht agil.
Machst du auch TDD (Test Driven Development) oder automatisierten Funktions- / Regressionstest? In diesem Fall sollten Änderungen an der Datenbank zu fehlerhaften Tests führen. Dies sollte dazu beitragen, die Auswirkungen zu beheben und den zu aktualisierenden Code zu ermitteln.
In diesem Fall ist Ihr Teamleiter nicht " zu agil ", Ihr Teamleiter ist ein " agiler Cowboy ". Halten Sie eine Retrospektive ab und identifizieren Sie, was schief gelaufen ist. Priorisieren Sie es hoch und adressieren Sie es dann während der nächsten Iteration. Das sollte deinen agilen Cowboy einfangen !!!
quelle
Gab es bei Ihnen vor etwa einem Jahr nicht dasselbe Problem? ' Mein Teamleiter sagt A.Property = A.Property; ist in Ordnung '. Scheint, als wäre die Qustion verboten, weil ich sie in meinem Kommentarverlauf nicht sehe. Wie auch immer, der Punkt ist:
Wenn Sie das Gefühl haben, dass alle Ihre Teamleiter Sie nur mit der Hälfte Ihrer Erfahrung durcheinander bringen, würden Sie wahrscheinlich einen Job ohne einen finden . Ich würde vorschlagen, einen Versuch zu unternehmen und als weitere Option eine Führungsposition einzunehmen. Sollte dies dennoch möglich sein, wurde Ihnen dies bereits angeboten.
quelle