Am letzten Tag hat der Manager Änderungen am Programm vorgenommen, die es kaputt gemacht haben, und möchte, dass ich zurückkomme, um es zu reparieren [geschlossen]

Ich habe gerade einen 5-Monats-Vertrag abgeschlossen, bei dem ich als Programmierer eingestellt wurde, um ein Programm zu erstellen. Das Programm ist Teil eines größeren Projekts. An meinem letzten Tag, gerade als ich alles übergeben hatte, ließ sich mein Chef einige Ausgaben des Programms zeigen. Er ist nicht wirklich technisch versiert (zumindest was Programmieren angeht) und er hat meine Arbeit fast nie überprüft. Er bemerkte einige Auslassungen/Fehler in der Ausgabe und ließ mich den Code ändern. Natürlich brach es das Programm. Natürlich konnte ich es nicht wieder in einen brauchbaren Zustand bringen. Ich hatte ein Backup, aber mein Chef sagte, es sei zu alt. Ich fühle mich schlecht, weil ich kein neueres Backup gemacht habe. Jetzt möchte mein Chef, dass ich an einem anderen Tag komme, um es zu beenden. Ich würde dafür nicht bezahlt werden und das ist eher ein Gefallen.

Zusammenfassung:

  • Mein Vorgesetzter hat am letzten Tag alle Leistungen eingesammelt
  • Mein Manager ließ mich etwas ändern, das das Programm kaputt machte, als ich gerade ging
  • Ich blieb lange, um es zu reparieren, aber ich wurde müde und frustriert und musste aufhören
  • Ich kehrte zu einer alten Version zurück, aber sie war ziemlich alt und meinem Manager gefiel sie nicht
  • Mein Vorgesetzter möchte, dass ich nächste Woche vorbeikomme, um das Problem zu beheben
  • Ich würde nicht bezahlt werden, aber ich bin damit einverstanden
  • Mein Manager führt Mikromanagement durch und stochert immer herum und bringt das durcheinander, was ich tue
  • Das Gebäude, in dem ich gearbeitet habe, hat relativ strenge Sicherheitsvorkehrungen und ich müsste wahrscheinlich Papierkram ausfüllen, nur um wieder in das Gebäude zu kommen.
  • Mein Vorgesetzter kann schlecht kommunizieren
  • andere Leute, die mit meinem Vorgesetzten zusammenarbeiten, denken, was er vorhat, ist verrückt und ein Zugunglück (wie die Art und Weise, wie er Daten organisiert)

Meine Gedanken was zu tun ist:

1) Wenn ich reingehe, habe ich eine bestimmte Zeit, nach der ich gehen werde, egal was passiert. Wenn ich mich zum Beispiel für 8 Stunden entscheide, würde ich ein Backup von allem machen, dann wäre ich nach 8 Stunden fertig, auch wenn das Programm in einem schlechteren Zustand ist als zu Beginn.

2) Ich würde gerne mit dem Vorgesetzten meines Vorgesetzten sprechen, da ich mit ihm besser kommunizieren kann. Ich werde das Ultimatum stellen, dass ich nur reinkomme, wenn mein Manager nicht da ist, da er zu Mikromanagement neigt, was dazu führt, dass Dinge kaputt gehen. Ich weiß, wenn er gestresst ist, kommt er alle 20 Minuten vorbei, um zu fragen, wie es mir geht, und schnüffelt herum, und das bringt mich ernsthaft aus der Bahn. Wie kann ich das diplomatisch formulieren?

Irgendwelche anderen Anforderungen, nach denen ich fragen sollte? Ich mache mir auch Sorgen, dass die IT-Abteilung den Zugriff auf mein Konto gesperrt hat, wenn ich zurückkomme. FWIW Ich bin mir sicher, dass ich das Problem mit dem Programm in einer ruhigen Umgebung in 1 oder 2 Stunden beheben könnte.

UPDATE: Ich habe den Manager meines Managers angerufen (mein Manager ist jetzt im Urlaub) und er sagte, es sei ihm lieber, wenn ich eine Dokumentation über die Änderungen schreibe und wie man sie behebt.

In Bezug auf den Vertrag steht klar, an welchen Tagen ich angefangen habe, wie viele Stunden pro Woche gearbeitet werden und wie viele Dollar und Stunde ich bezahlt bekomme. Nichts über das Produkt oder die Leistungen.

In Bezug auf die Versionskontrolle: Mir wurde gesagt, ich solle sie nicht verwenden, obwohl ich inkrementelle Backups gemacht hatte. Ich habe auf ein Backup zurückgegriffen, aber mein Manager sagte, es sei zu alt. Ja, mir ist klar, dass ich ein weiteres Backup des fertigen Produkts hätte erstellen sollen, aber ich war gerade dabei, alles an meinen Manager zu übergeben, und wurde „überrascht“, als er mich plötzlich aufforderte, den Quellcode zu ändern.

Letztes Update: Ich ging wieder hinein. Behoben. Jetzt wollen sie, dass ich wieder hereinkomme und sage, dass es nicht läuft / sie nicht wissen, wie man es betreibt. Ich gehe nicht wieder rein.

Das Wort nein kommt mir in den Sinn. Aber Fragen, die uns auffordern, eine Entscheidung für Sie zu treffen, sind nicht zum Thema
@ReallyTiredOfThisGame Ich versuche, es nicht als Bitte um eine Entscheidung zu formulieren. Ich frage, ob ich unter welchen Bedingungen zurückkehren soll, um den Übergang so einfach wie möglich zu gestalten?
Warum war Ihr Code nicht in der Quellcodeverwaltung?
Ja, wirklich, ich weiß nicht, wie das überhaupt passiert.
@HLGEM der Manager hat mir gesagt, ich solle die Versionskontrolle nicht verwenden. Das ist, was ich meine, dass er Mikromanagement betreibt, aber nicht technisch ist.
@JoeStrazzere kannst du erklären, was du meinst? Programme sind selten 100% fehlerfrei und meines war keine Ausnahme, aber es erzeugte die korrekte Ausgabe für die meisten Tabellen.
Wenn er gesagt hat, dass er die Versionskontrolle nicht verwenden soll, liegt es in seiner eigenen Verantwortung, ein eigenes Backup erstellt zu haben, bevor er seine Änderungen vornimmt. Sie sind nicht verpflichtet, ihn vor einer selbst zugefügten Wunde zu retten. Wie wichtig ist er als Referenz, und wird seine Rettung das verbessern? Ehrlich gesagt denke ich, dass Sie Beratungsgebühren verlangen sollten, auch wenn es "ein Gefallen" ist.
Selbst wenn mein Client sagte, er solle die Quellcodeverwaltung nicht verwenden, hätte ich zu meiner eigenen Gesundheit und zu meinem Schutz etwas unternommen, um den Code auf irgendeine Weise zu überprüfen und zu archivieren. Ich mache das sogar für meine eigenen dummen Projekte zu Hause. Es gehört einfach zur Entwicklung dazu.
"Mir wurde gesagt, ich solle die Versionskontrolle nicht verwenden." <-- Diese Aussage ist keine Entschuldigung für einen Fachmann. Stellen Sie sich vor, Sie sind ein Berufskraftfahrer und Ihr Chef sagt: „Verwenden Sie keinen Sicherheitsgurt“. Sie können und sollten die Versionskontrolle dennoch auf Ihrem eigenen Entwicklungscomputer verwenden, auch wenn das Unternehmen nicht in ein zentralisiertes Versionskontrollsystem investiert.
@Brandin, das ist ein bisschen dumm zu denken - das Nichtanlegen eines Sicherheitsgurts ist illegal und jeder weiß das. Außerdem habe ich die Versionskontrolle verwendet, das Problem war, dass ich keine Kopie des Endprodukts erstellt habe, da ich dachte, dass sich am letzten Tag nichts ändern würde ... in diesem Sinne stimme ich zu, dass es ein Versehen war, aber es hat keinen Sinn, darüber zu weinen Jetzt.
Die Versionskontrolle funktioniert auf diese Weise: Wenn Sie zur endgültigen Version gelangen, übertragen Sie diese Version in die Versionskontrolle und markieren sie als "0.1.0-rel" oder etwas Ähnliches. Wenn Sie oder Ihr Chef am letzten Tag daran herumfummeln und etwas kaputt machen, rollen Sie einfach auf 0.1.0-rel zurück, um zur vorherigen bekannten funktionierenden Version zu gelangen. Aber es hört sich so an, als hätten Sie das nicht getan (dh Sie haben die Versionskontrolle nicht verwendet).
Wenn ich die Geschichte nicht falsch verstehe, hat der Manager die Änderungen nicht vorgenommen. Er hat am letzten Tag Änderungen angefordert, die Sie wie gewünscht vorgenommen haben. Wie andere gesagt haben, sind Sie derjenige, der den Manager nicht davon überzeugt hat, die Quellcodeverwaltung zu verwenden. Ich kann buchstäblich nicht glauben, dass Sie 9 Monate gearbeitet haben, ohne sich einzuloggen, weder in der "Quellcodeverwaltung" noch in der "Hier ist, was ich bisher habe, ist das das, was Sie im Sinn hatten?" Sinne. Allerdings kann es für Sie legal sein, kostenlos zu arbeiten, um das Problem zu beheben.
Arbeite niemals umsonst. Nicht dein Problem.
@stannius, es ist nicht meine Aufgabe, meinem Vorgesetzten zu sagen, was ich tun soll
Sie brauchen nicht einmal eine Quellcodeverwaltung. Klicken Sie auf Ihrem Computer auf den Ordner, der Ihre gesamte Arbeit enthält, und wählen Sie „Duplizieren“ aus einem Menü. Datum eingeben, fertig. Dass sowohl Manager als auch Entwickler eher inkompetent agierten, ändert am Ende aber nichts an der Situation.
Und als Regel gilt: Tu niemals etwas, wenn du unter Druck gesetzt wirst. Nicht am Tag vor dem Urlaub, schon gar nicht am Tag vor der Abreise. Sie werden Fehler machen, und hier waren sie fatal.

Antworten (3)

Die Antwort hängt davon ab, wie der Vertrag geschrieben ist. Wenn es sich um einen Festpreisvertrag handelt, werden Sie x für y Leistungen bezahlt, dann ja, Sie müssen die Probleme kostenlos beheben, da der Vertrag nicht vollständig ist.

Wenn es sich bei dem Vertrag um einen Zeit- und Materialvertrag handelt, werden Sie x für y Zeitaufwand bezahlt, dann könnten Sie die zusätzliche Zeit in Rechnung stellen.

Die anderen Tatsachen sind der Art des Vertrages untergeordnet. Die Tatsache, dass es immer noch Fehler im Code gibt, ist Teil der Codierung, wenn Sie die Anforderungen nicht doppelt überprüfen, werden Dinge passieren. Die Tatsache, dass es keine Quellcodeverwaltung gibt und die zusätzlichen Änderungen daher nicht einfach rückgängig gemacht werden können, ist ein Problem, und ich bin sicher, dass Sie für das nächste Mal lernen werden.

Letztendlich kommt es auf die Art des Vertrages an und darauf, ob Sie wieder mit dem Unternehmen zusammenarbeiten möchten. Manchmal lohnt es sich, einen Tag Arbeit zu schlucken, um sich weitere 3 Monate zu sichern, da Sie die zusätzlichen 3 Monate sonst möglicherweise nicht erhalten.

Upvoting für die Erwähnung der verschiedenen Vertragsarten.
Dies ist die einzig verantwortungsvolle Antwort. Lesen und verstehen Sie Ihren Vertrag. Wenn Sie Arbeiten außerhalb des Vertrages ausführen, verlieren Sie den Schutz des Vertrages.
Und wohlgemerkt, die zusätzliche Arbeit soll zu einem höheren Stundensatz erledigt werden :)

Als Programmierer, der für Ihre Ausgabe bezahlt wird, liegt es in Ihrer Verantwortung, sicherzustellen, dass Sie alle Ergebnisse, für die Sie bezahlt werden, reproduzieren können. Die Leistungen umfassen nicht nur die endgültige Arbeitssoftware, sondern auch den Quellcode und alle Build-/Make-Dateien, die zum Erstellen der endgültigen Arbeitssoftware erforderlich sind, und auch zum Bereitstellen, wenn Sie Cloud-basierte Software schreiben.

Dies kann bedeuten, dass Sie Ihre eigenen Backups aufbewahren, und es kann bedeuten, dass Sie Ihren Quellcode in der Versionskontrolle aufbewahren.

Da Sie nicht alle Liefergegenstände gepflegt haben, wäre es das Richtige, es richtig zu machen. Das heißt, auf Ihre Kosten, ohne zusätzliche Vergütung, liefern Sie, wofür Sie bereits bezahlt wurden.

"Als Programmierer, der für seine Leistung bezahlt wird" FWIW Ich wurde nach Stunden bezahlt, und das ist im Vertrag klar angegeben
Es wird nur stunden- oder auftragsbezogen abgerechnet. Es ändert nichts an der Verantwortung, ein vollständiges Paket zu liefern, wie @shoover auflistet.
Noch wichtiger ist, dass niemand für die Programmierung ohne ordnungsgemäße Versionskontrolle bezahlt werden sollte.
@cdkMoose Teil der Sache war, dass mein Chef mir, sobald ich ein Modul beendet hatte, die Anforderungen für das nächste gab. In diesem Sinne war mir nie wirklich neu, was genau "das Gesamtpaket" war
@JonStory, der Manager sagte, er solle keine Versionskontrolle verwenden
@JimmyBauther, am Ende jedes Moduls hätten Sie die Quelle für dieses Modul auf irgendeine Weise archivieren sollen/könnten. Sie hätten dann "das Komplettpaket" bis zu diesem Zeitpunkt.
Wenn er gesagt hat, dass er es nicht tun soll, dann ist das ehrlich gesagt sein Chaos und er sollte Sie zumindest dafür bezahlen, es zu reparieren. Lektion für das nächste Mal: ​​Verwenden Sie es trotzdem
Diese Antwort kann je nach den Umständen zumindest in einigen Bereichen falsch sein, da geleistete Arbeitsstunden, selbst um einen Fehler zu korrigieren, immer noch als geleistete Arbeitsstunden gelten können, zu deren Ausgleich der Arbeitgeber gesetzlich verpflichtet ist. Ich denke, es ist ein rechtliches Problem, und ein lokaler Anwalt sollte konsultiert werden.
Mit einem Stundenvertrag würde ich nicht zurückkommen, um Fehler zu beheben. Es war jedoch ein großes Versehen, Ihre Quelle nicht in der Quellcodeverwaltung zu behalten. Auch wenn die Quellcodeverwaltung nicht bereitgestellt wird, sollten Sie sie auf Ihrem Desktop ausführen. In Anbetracht der Tatsache, dass Sie die Arbeit erledigt und dann "verloren" haben, wäre ich geneigt, für ein oder zwei Tage zurückzukommen, um die Dinge zu klären. Und verwenden Sie die Quellcodeverwaltung, auch wenn Sie es selbst tun müssen

Persönlich würde ich sagen, dass der Manager nicht genug verwaltet hat, nicht dass er Mikromanagement betreibt. Es gibt keine Entschuldigung dafür, die Version, die Sie an Ihrem letzten Tag geliefert haben, nicht in irgendeiner Art von Quellcodeverwaltung zu haben. Er hätte Sie schon früh hart treffen sollen, wenn Sie die Quellcodeverwaltung nicht richtig verwendet haben. Er hätte den Code auch früher erhalten sollen, damit er ihn vor Ihrer Abreise einer QA unterziehen konnte.

Jetzt haben Sie eine teure Lektion darüber, warum Profis immer Quellcodeverwaltung verwenden und warum sie halten, was sie versprechen. Also, ja, Sie müssen jetzt hineingehen und das Chaos beheben, das Sie (nicht der Manager, Sie) verursacht haben, als Sie spontan Änderungen an Code vorgenommen haben, der sich nicht in der Quellcodeverwaltung befand.

Sie bitten den Manager, sicherzustellen, dass die richtige Sicherheit für Ihre Rückkehr vorhanden ist.

Dann ertragen Sie es, wie auch immer er denkt, dass er mit Ihnen arbeiten muss. Wenn er über dir hängen will, dann Pech gehabt. Gefallen lassen. Sei erwachsen. Sie können ihn höflich bitten, Ihnen ein paar Stunden Zeit zu geben, bevor er sich wieder meldet, aber wenn er es nicht tut, müssen wir uns alle mit Dingen abfinden, die nicht unseren Vorlieben entsprachen. Im Moment möchten Sie dies einfach erledigen, damit Sie mit Ihrem Leben weitermachen können. Also mach es einfach. Setzen Sie keine Grenzen, als würden Sie ihm noch 8 Stunden geben und gehen, auch wenn es noch kaputt ist. Du behebst dein Chaos. Erstellen Sie zunächst eine Quellcodeverwaltungsversion des aktuellen Codes und checken Sie diese regelmäßig ein, während Sie diese Änderungen vornehmen. Sie müssen jedoch nur das reparieren, was gerade kaputt ist. Sie müssen keine neuen Anforderungen akzeptieren und umsetzen.

Hm. Ja und nein. Jeder kompetente Manager hätte wissen müssen, dass eine Änderung am letzten Tag nach Ärger verlangte; Die letzten Tage sollten für die Sicherung und Dokumentation des Status verwendet werden. Ich stimme zu, dass das OP auf jeden Fall ein Backup hätte erstellen sollen, bevor es mit dieser Änderung begonnen hat, lokal, wenn nicht in einem SCC, aber ich denke, dass dies eine gemeinsame Verantwortung ist.
Diese Antwort ergibt für mich einfach keinen Sinn. Wenn Ihr Vertrag abgelaufen ist, macht es für niemanden Sinn, wieder zu arbeiten, um mehr Arbeit zu erledigen. Das Richtige ist, einen neuen Vertrag auszuhandeln, und sei es nur für ein oder zwei Tage.