Bin ich für die Arbeit der Kollegen verantwortlich, da wir ein Team sind, obwohl sie mich ausgeschlossen haben?

Ich arbeite jetzt seit 7 Monaten in meiner jetzigen Firma und absolviere insgesamt meine zwei Jahre in der Branche. Mein Unternehmen ist ein großes Unternehmen mit relativ entspannten Fristen und flexiblen Zeitplänen.

Wir sind ein neu gegründetes Team, die meisten von uns sind Junioren mit Erfahrungen, die von neuen Absolventen bis zu zwei Jahren Erfahrung bei max. Der einzige leitende Mitarbeiter, der auch der Scrum Master ist, macht sich nicht die Mühe, jemanden anzuleiten, und kümmert sich nur um seine eigenen Angelegenheiten. Unser Manager ist auch eine extrem lockere Person.

Wenn ihnen Arbeit zum Produzieren gegeben wird, ziehen sich die neuen graduierten Mitarbeiter oft in ihre kleinen „Buddy-Teams“ zurück, horten Aufgaben und arbeiten in Eile, ohne zu planen, zu entwerfen, zu konsultieren oder irgendetwas mit anderen zu besprechen. Infolgedessen dominiert diese aufgrund ihrer Schnelligkeit unsere Entwicklungsbemühungen.

Zu diesem Zeitpunkt produzierten sie sehr fehlerhaften Code ohne erkennbare Struktur. Das Produkt verkalkt auch bei geringer Belastung nicht. Wir haben jetzt ein sehr verblüffendes lokales Entwicklungssetup, zwei verschiedene Testsetups, die nicht wie beabsichtigt funktionieren, und sie sagen uns immer noch: "Wir werden es später beheben".

An einem Punkt habe ich versucht, einen Teil des Codes umzugestalten, da das Erstellen zu lange dauerte und der Manager sich darüber beschwerte. Obwohl die Kollegen wussten, was ich tat, beschwerte sich anfangs niemand oder widersetzte sich mir, doch ich hörte, dass der Scrum Master, der älteste Mitarbeiter in unserem Team, meine Versuche hinter mir, Dinge zu reparieren, als „Verschwendung“ verspottete der Zeit", dass es "niemand kümmerte".

Also beschloss ich, das Refactoring ganz aufzugeben, es wurde nicht begrüßt. Zu dieser Zeit gelang es mir, zwei neue Features zu entwickeln und zu vervollständigen.

Bei unseren Gesprächen mit dem Manager habe ich meine Bedenken zu all dem vom ersten Tag an offen geäußert. Der Manager stimmt mir oft zu, bietet aber nie eine praktische Lösung an. Er glaubt, mit der Zeit wird alles gut.

Er fragte mich, warum ich die von mir entdeckten Probleme nicht mit „Korrekturen“ oder „Verbesserungen“ liefere. Er fragte mich auch nach dem Refactoring, das ich durchführen sollte, da er den Zustand des Codes nicht genehmigte, und ich sagte ihm, dass ich nicht in der Lage sei, dies zu tun, da ich damit ganz allein sei und es niemanden zu interessieren scheint über Qualität neben mir. Ich erwähnte auch die Reaktion, die ich vom Scrum Master bekomme, dass ein anderer Kollege nach Lösungen suchte und mich nie darüber informierte, also konzentrierte ich mich auf andere Aufgaben.

An diesem Punkt habe ich das Gefühl, dass der Manager es für meine Verantwortung hält, die Dinge zu beheben, da ich derjenige bin, der auf dieses Problem hinweist. Allerdings finde ich diese Vorgehensweise unfair. Ich muss sagen, dass ich nicht glaube, dass ich für die Fehler anderer verantwortlich bin, da sie nicht bereit sind, aus meinem „Refaktorisieren“ zu lernen und es für „Zeitverschwendung“ halten.

Wie Sie vielleicht feststellen, bin ich auch ziemlich neu in der Belegschaft und muss eine Menge Soft- und Hard-Skills lernen. Also hier ist mein Hauptdilemma:

Was würde passieren, wenn ich Arbeiten im Zusammenhang mit diesem Produkt vermeide und mich von nun an ausschließlich auf andere Aufgaben konzentriere? Bin ich wirklich verantwortlich für diese Art von Arbeit, die von Kollegen produziert wird, indem sie mich ausschließen?

Edit: Ich hätte deutlich machen sollen, dass wir Agile, Scrum und Kanban machen. Dadurch gibt es keine Aufgabenzuweisung, wir übernehmen freiwillig offene Aufgaben. Außerdem haben wir alle denselben Manager, den ich in dem Beitrag erwähnt habe, und haben eine horizontale Hierarchie in unserem Team, also gibt es keinen „Chef“, „Teamleiter“ oder so etwas. Von uns wird erwartet, dass wir gemeinsam handeln.

Edit 2: Beitrag gekürzt. Edit 3: Beitrag weiter gekürzt.

tl;dr: Kollegen programmieren das Produkt wie Cowboys und lassen andere nicht dazu beitragen, der Manager scheint zu erwarten, dass ich die Lösung bereitstelle, obwohl sich außer mir niemand im Team darum zu kümmern scheint. Bin ich wirklich dafür verantwortlich, die Arbeit zu reparieren, zu der ich kaum beigetragen habe, da wir als Team arbeiten?

Bitte denken Sie daran, Ihren Beitrag zu kürzen. Es ist ziemlich viel zu lesen, und wenn Sie es tun, erwarte ich, dass Sie viel mehr Engagement von Leuten bekommen werden, die dazu kommen.
OP, das ist viel zu lang.
"Niemand wird uns führen". Das ist bei Software völlig normal. Es heißt „Willkommen in der Welt der Software“. Diese Frage wird hier immer wieder gestellt. Die Antwort lautet immer: „(1) Das Leben ist hart im Programmieren! (2) Lernen Sie Ihren Porsche-Händler kennen!“
@Fattie, welche Teile kann ich weiter trimmen? Ich denke, wenn ich es weiter kürze, könnte es zu Missverständnissen führen.
Hallo OP. Um ehrlich zu sein ... ich würde mir darüber keine Sorgen machen :) Wie auch immer, Ihre Frage sagt nur aus: Als neuer Programmierer bin ich schockiert zu erfahren, dass ich in einem typischen Team von etwa 10 Personen der einzige bin kompetente Person. Alle anderen, einschließlich der Manager, sind völlig nutzlos. Die einzige Antwort darauf ist (1) ja, das ist richtig (2) „Halt die Klappe, sei kein Baby und arbeite härter“ (3) sei bereit, sehr bald erstaunlich hohe Summen zu verdienen.
@EJoshuaS Ich würde auch sagen, dass Voodoo-Programmierung auch hier eine Sache ist.
Sie müssen edit 2 und edit 3 nicht eingeben, jeder kann den Beitragsverlauf einsehen. Typische Manager mögen keine Probleme, sie wollen Lösungen und warum (Geld/Zeit) es interessant ist, in Ihre Lösung zu investieren. Sie können auf der Website suchen, es gibt ziemlich viel Zeug über "wie ich meinen Manager von <XY> überzeuge". Wenn der aktuelle Zustand eines Teils Ihres Codes Ihrer Produktivität definitiv schadet, nennen Sie Fakten mit Ihnen (es hätte 1 Tag dauern sollen, ich habe stattdessen 5 gebraucht, jedes Mal, wenn wir dort etwas tun, treten unerwünschte Nebenwirkungen auf und lassen uns verlieren Zeit,...)
Führt Ihr Unternehmen Code-Reviews durch?
@EJoshuaS Wir haben sie eingerichtet, aber die Mitarbeiter führen keine ordnungsgemäßen Überprüfungen durch und sagen in Besprechungen offen, dass sie Überprüfungen als Zeitverschwendung empfinden, sodass sie dies nicht tun werden, obwohl es ihre Aufgabe ist, und sie halten sich auch nicht daran, wenn dies der Fall ist Ist ein PR braucht Stimmen, sie einfach mit Freundschaft gepusht bekommen. Das ist einer der Gründe, warum ich aufgehört habe, mich für diese Sache verantwortlich zu fühlen und auch Refactoring anzubieten. Ich kann dieses Chaos nicht retten, das ist nicht mein Job.

Antworten (4)

Ruiniere nicht deine geistige Gesundheit damit. Ja, technisch gesehen sind Sie dafür verantwortlich, da jeder in Ihrem Team es ist. Und wenn dies ein Problem wäre, das auf eine kleine Anzahl von Kollegen beschränkt wäre, würde meine Antwort anders ausfallen. Aber das scheint ein teamweites Problem zu sein, und Sie allein werden es nicht beheben.

Gibt es noch andere Arbeiten, die erledigt werden müssen? Konzentrieren Sie sich darauf. Sie müssen sich nicht über ein Produkt ärgern, an dem Sie nicht gearbeitet haben, und wenn Sie versuchten, jemandem zu helfen, wurde Ihre Arbeit weggeworfen und Sie bekamen sogar negative Reaktionen von Ihren Kollegen. Da es scheint, dass Sie an dem arbeiten können, was Sie wollen, indem Sie aus einer Reihe von Aufgaben auswählen, tun Sie dies. Wenn Ihr Vorgesetzter Sie danach fragt, können Sie ehrlich sein, da sie vernünftig erscheinen:

Ich habe mich entschieden, meine Arbeit auf Aufgaben außerhalb des X-Projekts zu konzentrieren. Obwohl ich helfen wollte, den Code zu verbessern, wurden meine Beiträge abgelehnt und Leute haben sich über meine Beteiligung beschwert. Das fühlte sich wie eine riesige Zeitverschwendung an, und ich möchte meine Zeit nicht weiter verschwenden, wenn ich produktiver sein und wertvolle Arbeit für das Unternehmen leisten könnte, wie in den Projekten Y und Z.

Sie arbeiten in einem Team, dem Qualität egal ist, jeder denkt nur an sich. Werden Sie nicht dazu, sondern handeln Sie entsprechend. Sich in einer solchen Umgebung zu sehr zu sorgen, wird dich verrückt machen. Ich würde auch raten, mit der Jobsuche zu beginnen und bei Vorstellungsgesprächen in Unternehmen nicht zu zögern, ihnen Fragen zu stellen, um sicherzustellen, dass Sie nicht wieder an einem solchen Ort landen.

Wenn die Aufgaben Ihrem Arbeitsvertrag nicht widersprechen, müssen Sie tun, was Ihnen Ihr "Anweisungsbefugter" (Übersetzungssoftware -.-, Ihr Chef, Manager, Scrum Master -> die Person, die Ihnen Ihre Aufgaben gibt) zuweist.

Aber Sie können deutlich machen, dass Sie für Ihre Arbeit Unterstützung brauchen, wie z. B. kooperative Mitarbeiter, Dokumentation von Code, Programmierstandards, Vereinbarungen über die Architektur von Software und so weiter.

Niemand kann erwarten, dass Sie ein Haus ohne einen geeigneten Werkzeugkasten bauen! Machen Sie Ihrem Vorgesetzten (und sich selbst) klar, was Sie wirklich brauchen, was Sie gerne haben und wie Sie es bekommen.

Aber wenn dieser Arbeitsplatz diese Mühe nicht wert ist (und hier zählt nur deine Meinung), dann kannst du dir einen neuen suchen, der besser zu deiner "was ich arbeiten will"-Liste passt :)

EDIT nach Kommentar:

Wenn Sie als Team für die Zielerfüllung verantwortlich gemacht werden, dann ist jedes Teammitglied verantwortlich, Sie auch. Immer wieder gibt es Aufgaben, die keiner übernehmen will, aber man muss. Vielleicht ist es möglich, mit Ihren Kollegen einen "Deal" zu machen: Sie übernehmen diese ungeliebte Aufgabe (Ihre Mitarbeiter tun so, als würden sie sie auch nicht lieben) und sie erklären sich bereit, Sie mit dem zu unterstützen, was Sie wollen (siehe "Machen Sie es deutlich ...").

Meiner Meinung nach basiert alle Teamarbeit implizit auf solchen Deals, aber manchmal müssen sie ausgesprochen werden.

Und um es in Zusammenhang mit Ihrer Frage zu bringen: Nein, Sie sind nicht für die Arbeit Ihrer Mitarbeiter verantwortlich, aber Sie sind (mit ihnen) für Ihren Output verantwortlich.

Ich habe meinen Beitrag bearbeitet, wir haben keine zuweisende Stelle in unserem Büro, wir erhalten einige Ziele und melden uns dann freiwillig für Aufgaben, die diese Ziele erreichen würden.
Wer prüft, ob die Ziele erreicht werden? und wer wird verantwortlich gemacht, wenn sie es nicht tun?
Während Scrum of Scrums weist ein allgemeiner Product Owner diese Ziele dem Scrum Master und den Product Owner-Teamkollegen unseres Teams zu. Am Ende jedes Sprints gehen wir als Team alle Aufgaben noch einmal durch und schauen, ob sie dem „Done“-Kriterium entsprechen oder nicht. Wenn die Dinge schief gehen, werden wir als Team und nicht auf individueller Basis beschuldigt, als Unternehmen stärken wir die „No-Blame“-Kultur. Also, wie ich im Beitrag erwähnt habe, ist es kollektiv.
Das. Sie müssen sich nicht proaktiv wegen Fehlern anderer umbringen (insbesondere wenn sie ihre eigenen nicht beheben), aber Sie müssen trotzdem tun, was Ihr Vorgesetzter direkt von Ihnen verlangt. Erklären Sie in diesem Fall klar, was das Refactoring bedeutet (in Bezug auf die Hilfe, die Sie von ihnen benötigen, und die Zeit, die es dauern wird). Irgendwann sollte Ihr Vorgesetzter verstehen, dass es nicht der beste Weg ist, Sie einzustellen, wenn Sie einen seiner erfahrenen Entwickler einsetzen, um die Fehler von Junioren zu beheben. Jedenfalls würde ich an deiner Stelle sofort anfangen, mir einen anderen Job zu suchen, du wirst nicht glücklich sein, wenn du es bist.

Da dies ein agiles Scrum-Team ist, schreiben Sie ein Ticket in das Backlog für alles, was Sie sehen, das korrigiert werden muss. Das „Team“, wie Sie angegeben haben, wird diese Geschichten dann entweder bei der Planung aufgreifen oder sie im Rückstand behalten. Das sollte Ihren Manager zufrieden stellen, darauf hinweisen, dass Sie sie in das Backlog stellen und er mit dem Scrum Master sprechen muss, wenn sie nicht während der Planung einbezogen werden.

Sie sollten dann hereingebracht werden und die Leute sollten sie IN PRIORITÄTSREIHENFOLGE nehmen. Das ist eine andere Sache, die Sie bei der Planung ansprechen könnten, dass die Leute Rosinen herauspicken und die Dinge nicht in der Reihenfolge ihrer Priorität bearbeiten.

Sie sollten während der Planung auch Verpflichtungsmeetings durchführen. In meiner Organisation warfen wir eine Faust von fünf (Rang 1 bis 5) darüber, wie zuversichtlich wir in den Plan waren. Dies ist Ihre Gelegenheit, eine 1 oder 2 zu werfen und anzuzeigen, dass Sie der Meinung sind, dass die Fehlerbehebungen verdrängt werden. Die Regel für den ersten von fünf lautet, dass alle Arbeiten gestoppt werden, wenn jemand eine 1 oder 2 wirft, und das Team den Plan erneut überprüfen muss, bis es mindestens alle 3er hat.

Schließlich sollten Sie einen Product Owner haben, der Ihre Geschichten akzeptiert. Wenn nicht, wer akzeptiert diese Arbeit als „erledigt“. Möglicherweise muss eine „Definition of Done“ angesprochen werden. Wenn Sie Agile/Scrum betreiben, haben Sie am Ende des Sprints Retrospektiven mit der Möglichkeit, Bedenken zu äußern und Muster zu ändern? Wenn nicht, ist dies vielleicht das Gespräch, das Sie mit Ihrem Management führen müssen, dass sie nicht wirklich Agile/Scrum, sondern Ad-Hoc betreiben.

https://agileforall.com/learning-with-fist-of-five-voting/

Diese Antwort entfernt sich ein wenig vom Fokus "Bin ich verantwortlich", zeigt aber Scrum - maßgeschneiderte - Wege, um die Situation als Ganzes zu lösen +
Wir haben ein bisschen benutzerdefiniertes Team-Setup, PO und SM sind auch Teammitglieder. Während des Sprint-Reviews erstellen wir kurze Berichte oder Demo-Videos von abgeschlossenen Aufgaben, und beim Meeting gehen wir sie einzeln durch und bestätigen, dass sie erledigt sind. Hier Dinge zu korrigieren, geht weit über meine Grenzen hinaus. Ich habe weder die Verantwortung noch die Befugnis, Dinge zu ändern. Ich habe offen mit meinem Vorgesetzten und meinem Team über meine Beobachtungen gesprochen. Niemand kümmert sich darum, niemand ist bereit, sich zu verbessern oder zuzuhören. Ich versuche nur, Probleme von jetzt an zu vermeiden, solange es legal ist, und studiere für die nächste Sache.
Es scheint, dass mein Kommentar zum Dokumentieren der Probleme und zum Einbringen in den Rückstand aus der Perspektive Ihres Managers wichtig ist. Geben Sie sie einfach ein und informieren Sie ihn, dass Sie Ihre Bedenken dokumentieren, es aber wirklich Sache des PO/SM ist, ihre Priorität festzulegen. In der Agilität sollten Sie jedoch Macht haben und Ihr Team sollte Retrospektiven durchführen. Wenn Ihr Vorgesetzter das nächste Mal fragt, warum Sie sie nicht beheben, geben Sie an, dass das „Team“ entscheidet, woran gearbeitet werden soll, nicht Sie und Sie haben Ihre Bedenken geäußert, aber es ist wirklich das „Team“, das diese Probleme beheben muss.

Sie sind nicht der Anführer , also sind Sie nicht für Teamfehler verantwortlich, nur für die Rolle, die Sie darin gespielt haben (dh Ihr Code und Ihre Auswirkungen auf das Team), darüber brauchen Sie sich keine Sorgen zu machen .

Das Kopieren von internem Code war übrigens eine kluge Sache!

Warum das Rad neu erfinden, wenn das Unternehmen bereits über passenden Code verfügt?!

Ihr Scrum Master hatte recht damit, dass Sie Zeit verschwendet haben.

Wenn der kopierte Code jedoch Probleme oder Fehler im Endprodukt verursachen würde, sollten Sie in der Tat versuchen, ihn zu verbessern, und dies als Begründung angeben.

Ihr Vorgesetzter möchte nicht, dass Sie leiten oder leiten, aber er hofft vielleicht, dass Sie Probleme lösen können, die andere nicht können oder wollen.

Wenn Sie können, würde das sicherlich Ihren Respekt und Ihr Ansehen beim Chef erhöhen, sonst könnte Ihre Kritik als Jammern interpretiert werden.

Je nach Arbeitsaufkommen im Unternehmen kommt man um dieses Projekt vielleicht nicht herum.

„Warum das Rad neu erfinden, wenn das Unternehmen bereits passenden Code besitzt“ Das klingt so, als hätte die Person in einem Projekt kopiert, wo sie wahrscheinlich nur einen Schnipsel brauchte
@Mars Es ist legitim (natürlich mit seinen eigenen Fallstricken), ein funktionierendes, bewährtes Projekt zu verwenden und darauf aufzubauen, bis Sie einen funktionierenden Prototyp für Ihr neues Projekt haben. Beginnen Sie dann mit dem Entfernen von nicht benötigtem Code. Wenn es sorgfältig mit vielen Tests durchgeführt wird, kann es in viel kürzerer Zeit zu einem viel stabileren Produkt führen, als wenn man von Grund auf neu schreibt. Natürlich ist Zeit ein Faktor bei diesem Unternehmen oder Team, wie es in jedem Geschäft der Fall ist.
Scrum Master ist nicht mein Chef, er ist ein Teamkollege.
@oftencoffee entschuldigt, er lag meiner Meinung nach mit seiner Einschätzung trotzdem richtig.
@ DigitalBlade969 Ich hatte nicht die Absicht, das Rad neu zu erfinden, als ich umgestaltete. Der Kollege kopierte die gesamte Codebasis des Produkts, ohne zu analysieren, welche Teile wir benötigen würden und welche nicht. Dies führte zu einem sehr sperrigen und langsamen Code ohne jegliche Tests. Durch das Refactoring wollte ich also Dinge bereinigen, sehen, was lange Build-Zeiten verursacht usw. Ich denke nicht, dass die Beseitigung technischer Schulden Zeitverschwendung ist.
@oftencoffee das ist in Ordnung. siehe meinen Kommentar zu Mars. Auf diese Weise stellte er sicher, dass Sie an einem bereits funktionierenden Produkt arbeiten können und „alles, was Ihr Team tun muss“, es an das neue Projekt anzupassen. Das Entfernen von Teilen aus der funktionierenden Software könnte diese unbrauchbar machen und den Prozess der Umstellung auf das neue Produkt stören oder sogar beeinträchtigen. Ich sage nicht, dass dies die beste Lösung ist oder eine, die ich unbedingt wählen würde, aber es ist dennoch ein praktikables Konzept.
Warum um alles in der Welt sollte dies herabgestuft werden???????
Warum das Rad neu erfinden, wenn das Unternehmen bereits über passenden Code verfügt? Ich habe nicht abgelehnt, bin mir aber nicht sicher, wie genau dies gilt - das OP gibt an, dass der von anderen Personen geschriebene Code nicht geeignet ist (was hier sein Hauptanliegen ist) - einschließlich des kopierten Codes. Dies scheint die Frage nicht wie geschrieben zu beantworten. Siehe auch: Cargo-Kult-Programmierung .
@DigitalBlade969 Ich verstehe absolut, was du sagst, und du hast Recht, das tun die meisten von uns ständig! Ich meinte nur, dass es in diesem Fall so klingt, als ob OP es für massiven Overkill hält. Ich bin mir auch nicht sicher, warum dies herabgestuft wird! Ich persönlich stimme nicht zu, aber es ist fair genug Logik!