Frage:
Wie soll ich mich an einen Chef wenden, der immer wieder Zeitarbeiter anstellt, um mich etwas erledigen zu lassen?
KAT
2018-10-09 18:22:07 UTC
view on stackexchange narkive permalink

Lange Rede, kurzer Sinn, wir hatten in letzter Zeit viel zu tun, und um dieses Vakuum zu füllen, hat mein Chef Leiharbeiter eingestellt. Zuerst stellte er drei ein, die ungefähr zwei Monate blieben, aber nachdem der Kunde eine Frist verschoben hatte, stellte er kürzlich einen zurück.

Ich war sehr vorsichtig, wenn es darum ging, Arbeiten an sie zu delegieren, wie sie es gemacht haben Ein riesiges Durcheinander der Codebasis und wenn sich dann ein Vorstoß zur Produktion nähert, werde ich darauf angesprochen, sie funktionsfähig zu machen. Mein Chef wird ein wenig wählerisch und hat mir einen Kommentar darüber gegeben, dass sie hier sind, um zu helfen, und ich muss ihnen etwas zu tun geben. Das Problem ist, dass er kein Entwickler ist, also hat er nicht die Perspektive, was nötig ist, um schlechten Code zu reparieren oder zusammenzufügen. Er hat nur die Perspektive, dass er für sie bezahlt.

Ich hätte kein Problem damit, ihnen Dinge zu tun, wenn ich nicht wüsste (wie es jetzt schon oft passiert ist), dass sie in ein paar Wochen sind Ich werde gehen und wenn etwas kaputt geht, werde ich derjenige sein, der beauftragt ist, es in Rekordzeit zu reparieren. Das letzte Mal, als dies passierte, verbrachte eine vorübergehende Zeit fast zwei Wochen damit, Code zu schreiben, den ich dann in einem Tag reparieren sollte.

Wie kann ich das vermitteln, ohne wie ein Perfektionist zu wirken, der einfach alles machen will selbst?

Kommentare sind nicht für eine ausführliche Diskussion gedacht.Diese Konversation wurde [in den Chat verschoben] (https://chat.stackexchange.com/rooms/84260/discussion-on-question-by-kyle-how-to-approach-boss-that-keeps-hiring-temp-Arbeit).
Sind Sie am Einstellungsprozess beteiligt?Werden die neuen Mitarbeiter technischen Tests unterzogen?Sind sie tatsächlich Zeitarbeiter oder Freiberufler?
Haben Sie es geschafft, den temporären Code für 2 Wochen an einem Tag zu reparieren?
In welchem Bereich befindet sich der Manager, wenn er nicht in Software ist?Ist es möglich, dass Sie eine Analogie machen können, die für ihn besser ankommt?
Es ist nicht Ihre Aufgabe, zu entscheiden, wie Ihr Chef oder Ihre Firma ihr Geld ausgibt.Alles, was Sie tun können, ist nur zu versuchen, "Ihr Ding" zu machen ... so gut Sie können.
@mathreadler Vollständiger und völliger Unsinn.Jeder Chef, der sein Geld wert ist, kann seinen Untergebenen zuhören, wenn sie darauf hinweisen, dass eine Strategie mehr Probleme verursacht als löst und letztendlich die Kosten erhöht.Sicher, es gibt schreckliche Chefs, aber das bedeutet nicht, dass Sie nicht einmal versuchen, sie auf das Problem aufmerksam zu machen.
@jpmc26 In ihren Augen ist es wahrscheinlich eher ein Vorteil und kein Problem, und plötzlich bekommen sie diesen langen unerklärlichen Urlaub.Hmmm :) Kannst du jetzt besser verstehen?
Zehn antworten:
#1
+236
Philipp
2018-10-09 18:59:57 UTC
view on stackexchange narkive permalink

Vielleicht möchten Sie einige Argumente aus dem Buch The Mythical Man-Month von Frederick Brooks übernehmen. Obwohl es ursprünglich 1975 geschrieben (1995 überarbeitet) wurde, ist es immer noch eines der wichtigsten Werke in Bezug auf das Management von Softwareentwicklungsteams.

Es ist am bekanntesten für die Kodifizierung des Brooks'schen Gesetzes:

Durch Hinzufügen von Personal zu einem späten Softwareprojekt wird es später.

Die Gründe sind:

  • Neu Entwickler müssen über die vorhandene Architektur des Projekts unterrichtet werden, bevor sie etwas Nützliches tun können. Dies nimmt dem vorhandenen Entwicklungsteam Zeit.
  • Es gibt eine Obergrenze dafür, wie viele Personen gleichzeitig nützliche Beiträge zu einem Softwareentwicklungsprojekt leisten können. Es ist oft nicht möglich, vernünftige Unteraufgaben zu finden, die neuen Mitarbeitern zugewiesen werden können.

Für eine gute Softwareentwicklung ist ein stabiles Kernteam erforderlich, das von Anfang bis Ende zusammenarbeitet.

Ihr Manager kennt diese Regel möglicherweise nicht. Deshalb versucht er, Ihnen auf die einzige Art und Weise zu helfen, die er sich vorstellen kann: Fügen Sie Ihrem Projekt weitere Personen hinzu.

Kommentare sind nicht für eine ausführliche Diskussion gedacht.Diese Konversation wurde [in den Chat verschoben] (https://chat.stackexchange.com/rooms/84440/discussion-on-answer-by-philipp-how-should-i-approach-a-boss-that-keeps-Einstellung-t).
#2
+53
JohnHC
2018-10-09 18:34:04 UTC
view on stackexchange narkive permalink

Das Problem mit Zeitarbeitskräften und Auftragnehmern (Offenlegung, ich bin einer) ist, dass es oft kein Comeback gibt, wenn die Lieferung schrecklich ist.

Es kann sich lohnen, mit Ihrem Chef über die Qualität von zu sprechen die temps. Billig zu mieten bedeutet, die Kosten weiter nach unten zu verlagern, aber irgendwann wird er dafür bezahlen, den Code zu reparieren.

Sie können auch darum bitten, in den Einstellungsprozess einbezogen zu werden, indem Sie einen kleinen Codierungstest durchführen, um sicherzustellen, dass sich die Zeitarbeitskräfte tatsächlich lohnen. Nichts zu dramatisch, weniger als eine Stunde Arbeit, um sich ein Bild von den Fähigkeiten zu machen.

#3
+31
Ister
2018-10-10 12:31:51 UTC
view on stackexchange narkive permalink

Was Sie geschrieben haben, wirft tatsächlich eine Reihe roter Fahnen auf, die darauf hindeuten, dass die einzig praktikable Lösung darin besteht, Ihren Job zu ändern. Sie haben geschrieben, Ihr Manager ignoriert die Wichtigkeit und den Wert von Komponententests. Ich gehe davon aus, dass dies bei Analyse und Design der Fall ist, da diese Missverständnisse normalerweise in Bündeln auftreten. Sie sagen auch, dass er glaubt, dass das Hinzufügen eines temporären Entwicklers für einen Monat alles andere als eine weitere Verzögerung bringen wird. Anscheinend hat Ihr Manager wenig Ahnung, wie das Softwareentwicklungsprojekt ausgeführt werden soll, und es besteht kaum eine Chance, dass er seine Meinung ändert.

Sie können es jedoch versuchen.

Während a 9 Frauen, die in einem Monat entbunden werden sollen, sind eine beliebte Methode, um zu "beweisen", dass das Hinzufügen von Personen die Arbeit nicht unbedingt beschleunigt. Normalerweise funktioniert dies nicht bei jemandem, der das Problem nicht wirklich versteht, sondern es besser weiß. Verwenden Sie stattdessen das Beispiel des Grabens eines Brunnens.

Angenommen, Sie müssen einen Brunnen mit einem Durchmesser von 1 m und einer Tiefe von 15 m graben. Ein Mann braucht 15 Stunden, um es zu graben. Wie viele Männer werden benötigt, um die Aufgabe in 1 Stunde zu erledigen?

Die Antwort, die die meisten Manager (und die meisten Leute im Allgemeinen) geben, lautet, dass es 15 Männer sein werden, aber das ist es nicht true und es ist einfach, es jedem zu zeigen, der keine Ahnung hat, dass die -Codierung strike> überhaupt gut gräbt. Genau wie beim Codieren können Sie eine Grabperson durch eine andere ersetzen. Sie können (bis zu einem gewissen Grad) Ihre Arbeit teilen. Aber nur ein Mann passt in ein 1 m breites Loch, um überhaupt zu arbeiten. Wenn Sie eine zweite Person hinzufügen, wird die erste Person von ihnen behindert und kann ihre Arbeit nicht ausführen.

Sie können die Arbeit etwas beschleunigen, indem Sie eine erschöpfte Person gegen eine neue austauschen, damit eine zweite Person etwas hilft. Es wird nicht die Hälfte der Zeit sein, ein Save wird wahrscheinlich nicht mehr als 1/3 sein. Aber das Hinzufügen eines dritten Mannes wird höchstwahrscheinlich kein bisschen helfen. Die beiden werden sich ungefähr jede Stunde austauschen und Zeit haben, ihre Ausdauer wiederzugewinnen. Wenn Sie also darauf bestehen, den dritten Arbeiter innerhalb des Lochs einzusetzen, besteht der einzige Effekt darin, dass Sie mehr Zeit verlieren, wenn sie tauschen, oder einfach mehr Männer darauf warten, dass sie an die Reihe kommen, bezahlt werden, aber keinen zusätzlichen Wert bringen. Im besten Fall kein Gewinn, im schlimmsten Fall ein Verlust.

Sie können die dritte Person also für einige Hilfsaufgaben verwenden, z. B. zum Entfernen des Schmutzüberschusses aus der Brunnenumgebung. Gut, es spart vielleicht 5% Zeit für die Kosten eines Vollarbeiters.

Aber wie können Sie einen vierten Mann einsetzen, ganz zu schweigen von weiteren 11? Wenn Sie wirklich darauf bestehen, alle zu verwenden, entstehen Ihnen zusätzliche Kosten wie Kommunikation, Zeit für den Austausch usw. Ab dem vierten Mann werden Sie also nur Verzögerungen ohne jeglichen Nutzen und zusätzliche hohe Personalkosten hinzufügen .

Und das setzt voraus, dass alle Mitarbeiter qualifiziert sind. Was ist, wenn das Graben eines Brunnens eine zusätzliche Präzision erfordert und Sie dafür eine ungeschulte Temperatur einstellen? Sie müssen sie unterrichten, damit Sie in der ersten Stunde zeigen, wie Sie Wände gut herstellen, damit sie nicht auseinanderfallen, und wie Sie diese perfekt runde Form erreichen. Dann werden sie mit 50% der Geschwindigkeit des trainierten Mannes arbeiten und ihre Arbeit wird immer noch nicht perfekt sein, so dass der Dauerwellen-Typ die Korrekturen vornehmen muss und einige Zeit seiner Arbeit verliert. In Wirklichkeit wird der Brunnen fertig sein, bevor die neue Person etwas anderes als Verzögerungen bringen kann. Und es wird länger dauern, als wenn der Facharbeiter alleine gräbt. Sie können immer noch eine Temperatur für diese oder einfache Hilfsaufgaben verwenden (während ich in der Mitte eine Pause mache, lassen Sie die Wände unberührt), aber das sind immer noch 5, vielleicht bestenfalls 10% Gewinn. Und wenn die Temperatur auf die Wand trifft, muss der ausgebildete Arbeiter all das reparieren und es ist überhaupt kein Gewinn mehr.

Und es ist so einfach wie das Schwingen eines Spatens. Das Codieren ist viel komplexer.

Fassen Sie es so zusammen:

Es ist offensichtlich, dass Sie einen Entwickler trainieren müssen und 1 Monat ist ein Minimum, damit sie auf dem grundlegenden Produktivitätsniveau laufen, wenn sie qualifiziert sind . Während des Trainings müssen Sie die Zeit eines regulären Entwicklers in das Training investieren und die Arbeit der Zeitarbeitskräfte muss ohnehin überprüft werden, sodass es nichts anderes als Verschwendung ist, jemanden für weniger als 4-6 Monate zum Team hinzuzufügen.

Die andere Idee schlug vor, dass Sie in den Einstellungsprozess involviert sein könnten. Dies ist ein guter Rat, um die Zeit für die Einführung einer neuen Person in das Team zu verkürzen und die Anzahl der Fehler in ihrem Code zu begrenzen. Es ist jedoch weiterhin eine Schulung erforderlich (ein Einstieg). Eine Zeit, auch eine qualifizierte, für einen Monat ist also eine Verschwendung. Bestenfalls können Sie sie verwenden, um Hilfssachen zu schreiben. Wie Unit-Tests ;-)

Wenn Ihr Manager einen solchen Vergleich nicht verstehen kann, besteht Ihre letzte Option darin, erneut auf den Arbeitsmarkt zu kommen.

"Nehmen wir an, Sie müssen einen Brunnen mit einem Durchmesser von 1 m und einer Tiefe von 15 m graben. Ein Mann benötigt 15 Stunden, um ihn zu graben. Wie viele Männer werden benötigt, um die Aufgabe in 1 Stunde zu erledigen?"Dies ist insbesondere fantastisch, da es im Gegensatz zu dem offensichtlich offensichtlichen Beispiel einer Schwangerschaft das "Gotcha!"Winkel, der gleichbedeutend ist mit dem, was passiert, wenn versucht wird, mehr Entwickler einzustellen. Daher ist er kognitiv als Metapher besser zu verstehen, wenn es darum geht, das oberflächliche "Nun, es sollte so funktionieren!"erster Eindruck. Wir verwenden für jede Position einen "einmonatigen Anstieg", auch für Nicht-Entwickler, und selbst das ignoriert die Kosten für den Rest des Teams.
Das Lustige ist, dass dies in vielen Kulturen eine typische mathematische Frage auf der Primarstufe mit der * akzeptierten Antwort * "1h" ist.Ich denke, es könnte die Hauptursache für spätere Missverständnisse sein, dass das Hinzufügen von mehr Ressourcen ** immer ** die Zeit linear reduziert.Immerhin haben sie dir das in der Schule beigebracht!
"Es ist unmöglich, einen Bleistift mit einer stumpfen Axt zu spitzen. Es ist ebenso vergeblich, es stattdessen mit zehn stumpfen Äxten zu versuchen."- Edsger W. Dijkstra
Das gute Beispiel ist wahrscheinlich besser als Sie es machen - ein Mann muss graben, die Beute aus dem Loch heben und die Beute auf einen Haufen stapeln, zwei oder drei Männer, die das Projekt natürlich in ergänzende Aufgaben (Graben, Heben, Stapeln) aufteilt), aber es hilft nicht, mehr Personal als die Anzahl der sich ergänzenden Aufgaben hinzuzufügen - entweder Sie fügen einen Bagger hinzu und sie stören sich gegenseitig, oder es warten Leute herum, da die Menge an Beute zum Heben oder Stapeln nicht ausreichthalte sie beschäftigt.
"Sie haben geschrieben, Ihr Manager ignoriert die Wichtigkeit und den Wert von Unit-Tests ..." Ja, nein.Ich habe den Müll gesehen, der manchmal zum Testen dient.Unit Tests sind keine Magie.Wenn die Person, die sie schreibt, nicht kompetent und erfahren genug ist, um schlechten Code ohne sie zu erkennen, entstehen ihnen sowohl anfangs als auch langfristig Nettokosten.Hören Sie auf, sich wie eine Silberkugel zu verhalten, und verwenden Sie Pie-in-the-Sky-Ansätze, um über Softwareentwicklung zu sprechen.
@jpmc26 Keine Technik ist eine Silberkugel in der Softwareentwicklung (und auch in anderen Bereichen, glaube ich).Noch helfen Unit-Tests und gut geschrieben geben Ihnen einen Mehrwert.Wenn der Chef dies ablehnt, ist er normalerweise inkompetent.Und das ist eine rote Fahne für mich.Beachten Sie, ich habe exzellenten Code ohne Unit-Tests sowie schlechten Code mit ihnen gesehen.
#4
+22
xyious
2018-10-09 21:45:32 UTC
view on stackexchange narkive permalink

Dies wagt sich an allgemeine Ratschläge zur Softwareentwicklung ....

    Wenn der Code, den jemand schreibt, etwas kaputt macht, fügen Sie einen automatisierten Test hinzu, damit Sie ihn beim nächsten Mal früher sehen können.

  1. Überprüfen Sie Pull-Anforderungen und führen Sie nichts zusammen, bis Sie sicher sind, dass nichts anderes kaputt geht.

  2. Tests ergeben eine gute Spezifikation. TDD ist ein guter Weg, um sicherzustellen, dass das, was Sie bekommen, das ist, was Sie wollen. Geben Sie jemandem eine Aufgabe, um den Code zu schreiben, den Sie benötigen (wie die bereits geschriebenen Tests zeigen).

  3. Peer-Programmierung ist möglicherweise eine Option. Sie können Dinge sofort korrigieren und Fragen beantworten, während die Dinge weitergehen.

  4. ol>
Ich werde auch zu dieser hervorragenden Antwort hinzufügen, dass sich dies ändern muss, wenn sie 2 Wochen lang Code schreiben, ohne zu überprüfen, was sie tun.Geben Sie ihnen Aufgaben von 1-3 Tagen und Sie können Fehler viel früher überprüfen und abfangen.
Nicht, dass diese Antwort nicht korrekt wäre, aber angesichts der Beschreibung des Arbeitsplatzes durch das OP bezweifle ich, dass "Testen" sogar in den Wortschatz des Chefs aufgenommen wird.Und Code-Bewertungen?OPs Chef wird nur sehen, wie Geld den Bach runter geht ...: - /
Du hast wahrscheinlich Recht.Aber an diesem Punkt müssen Sie mit dem Chef sprechen und klarstellen, dass die Einstellung und das Loslassen von Zeitarbeitern weit mehr kosten, als die Dinge richtig zu machen.
Dies ist die richtige Antwort, das Problem sind nicht die temporären Entwickler, das Problem ist mangelnde Disziplin und [email protected] Sie müssen Ihrem Chef nicht mehr über Ihre Testfälle als über Ihre Variablennamen erzählen.Sie schreiben Code mit Tests, Punkt.Wenn es keine Tests gibt, ist es nicht fertig.Der beste Weg, um sicherzugehen, dass dies wahr ist: TDD
In diesem Quartal ist es in den nächsten zwei Jahren fast immer billiger.In jeder Entwicklungsphase steigen die Kosten für die Behebung eines Fehlers um den Faktor 10. Kosten für die Behebung eines Problems während des Entwurfs 10 US-Dollar?Die Reparatur kostet 100, sobald der Code in der Entwicklung ist, 1000 in Integrationstests und 10000 in der Produktion.Agile Prozesse mildern dies nur, indem sie häufiger überprüft werden, aber es ist immer noch wahr.Der Chef von OP verschiebt die Kosten in eine spätere Phase, um jetzt die Kosten für die spätere Multiplikation von Risiken, Kosten und Zeitplanauswirkungen zu ermitteln.
"Tests machen eine gute Spezifikation. TDD ist ein guter Weg, um sicherzustellen, dass das, was Sie bekommen, das ist, was Sie wollen."Kategorisch falsch, weil die Personen, die die Anforderungen bestimmen, diese höchstwahrscheinlich nicht lesen können.Selbst dann ist der Unit-Test-Code nicht qualitativ hochwertiger als der Rest des Codes, den jemand schreibt. Wenn Sie also eine Person haben, die nicht kompetent ist, erhalten Sie schlechte Tests zusammen mit dem schlechten CodeVerwaltung des Codes * noch teurer *.
#5
+7
Kilisi
2018-10-10 03:58:05 UTC
view on stackexchange narkive permalink

Wie kann ich mich an einen Chef wenden, der immer wieder Zeitarbeiter anstellt, damit ich etwas erledige?

Sie haben es bereits. Alles, was Sie tun können, ist, dem Chef Bescheid zu geben.

In der Zwischenzeit gibt es eine Lösung. Der Grund, warum Sie die Arbeit wiederholen müssen, ist, dass Sie herausgefunden haben, dass es zu spät Müll war. Sie haben die Möglichkeit, einige Fähigkeiten zu üben und mehr Verantwortung zu übernehmen, aber Sie tun es nicht. Es ist kein esoterisches Problem, es ist nur eine Sichtweise auf ein Problem und eine Lösungsmethode. Es lohnt sich zu lernen.

Dies ist eine der Situationen, in denen Mikromanagement von entscheidender Bedeutung ist. Bewerten Sie die Situation als Ganzes (einschließlich der Menschen, sie sind eine Ressource) und erstellen Sie einen Lösungsplan. Setzen Sie die Arbeitskräfte unter diesen Bedingungen effizient ein. Dies ist der EINZIGE Weg, Sie lassen nicht einmal erfahrene Leute von Ihrem Plan abweichen, sie haben nicht das vollständige Bild, Sie geben ihnen kleine Aufgaben und überprüfen alles, was sie tun, sie berichten Ihnen bei jedem Schritt.

Das Wichtigste ist, das Problem vollständig zu verstehen und einen soliden Plan zu haben. Teilen Sie es dann, wo immer möglich, in einfachere Aufgaben auf und verlassen Sie sich nicht darauf, dass jemand unbeaufsichtigt seinen Beitrag leistet.

Gute Antwort - OP-Verwaltung von Ressourcen im Detail ist die einzige echte Antwort, die die gewünschten Geschäftsziele erreicht.
#6
+5
JimmyJames
2018-10-10 19:08:40 UTC
view on stackexchange narkive permalink

Wenn Sie mit logischen Argumenten wie den 9 Monaten durchkommen können, um eine Baby-Analogie zu erstellen, ist das großartig, aber meiner Erfahrung nach funktioniert dieses Argument nur mit Leuten, die es bereits verstehen. Und selbst wenn dies der Fall ist, werden häufig Fragen zur optimalen Anzahl der Teammitglieder gestellt.

Wenn die Logik fehlschlägt, können einige Daten zusammengestellt werden, die zeigen, wie die Arbeit tatsächlich ausgeführt wird und konzentrieren Sie sich darauf, welche Arbeit der Menschen saniert werden muss. Wenn Sie dies zusammenfassen, können Sie ein ziemlich dramatisches Diagramm zeigen, wer tatsächlich zur Ausgabe beiträgt und wer davon ablenkt.

Ein Teil des Problems besteht darin, dass Manager unter dem Druck stehen, zu liefern, und dies benötigen um zu zeigen, dass sie etwas tun, um dies zu erreichen. Wenn Sie nichts tun, sehen sie möglicherweise ineffektiv und irrelevant aus. Sie können dabei helfen, indem Sie einige Änderungen anbieten, die Ihr Manager vornehmen kann (bessere Maschinen, Laptops, Whiteboards, ein Build-Server, andere Stunden, isolierter Arbeitsbereich usw.).

#7
+3
Twyxz
2018-10-09 18:40:06 UTC
view on stackexchange narkive permalink

Die Fähigkeitsstufe der Zeitarbeitskräfte hängt wahrscheinlich davon ab, wie viel Geld Ihr Manager in sie investiert. Da es sich nur um Zeitarbeitskräfte handelt, möchte er offensichtlich nicht zu viel Geld verschwenden. Wie Sie sagen, Ihr Chef ist kein Entwickler und geht wahrscheinlich nur davon aus, dass ein Codierer codieren kann.

Wenn dies jedoch Ihre Arbeitsbelastung langfristig erhöht und sich auf Ihre aktuelle Arbeit auswirkt. Sie müssen ihn für ein 1x1 ziehen und nur Ihre Probleme und den Grund, warum Sie nicht so viel Arbeit an sie delegieren, und Ihre Sorgen für die Zukunft vermitteln, wenn Sie Arbeit an sie delegieren.

Sie möchten Stellen Sie sicher, dass Sie nicht so rüberkommen, als würden Sie es mit Ihrem Chef versuchen, aber gleichzeitig müssen Sie die Botschaft vermitteln, da er nicht versteht, was in der Entwicklung passiert. Wenn Sie nur erwähnen, dass Sie die Arbeit gerne delegieren würden, aber nur, wenn Sie sich sicher fühlen.

#8
  0
Ross Millikan
2018-10-12 02:27:27 UTC
view on stackexchange narkive permalink

Ich finde es nützlich, ein bestimmtes Beispiel zu diskutieren. Nehmen Sie einen Fall von etwas, das ein Zeitarbeiter getan hat und das Sie repariert haben. Beschreiben Sie das Problem, an dem gearbeitet wird. Machen Sie eine sorgfältige Zeitleiste der Ereignisse und zeigen Sie an, wann die Zeitarbeit dazu aufgefordert wurde, wie lange die Zeitarbeit daran gearbeitet hat, wann die Probleme entdeckt wurden, wie die Probleme behoben wurden und wann der Code fertig war oder zumindest zurück verwendbar. Vergleichen Sie mit einer Schätzung, wie es mit einem stabilen Entwicklungsteam funktioniert hätte. Sie können zugeben, dass Sie das Beispiel ausgewählt haben, haben aber auch eine Liste mit vielen Problemen, bei denen dies aufgetreten ist.

Besprechen Sie nun Ihre Lösung, bei der es sich anscheinend um eine dauerhafte Ergänzung des Personals handelt. Wie lange wird es dauern, diese Person zu schulen (aber Sie tun es nur einmal, nicht einmal pro Zeitarbeit), wie vergleichen sich die Kosten (wie Sie am besten wissen) usw.

Es klingt wie Ihr Chef / Das Unternehmen versteht nicht, dass Sie zu viel Arbeit leisten müssen. Die Einstellung von Zeitarbeitskräften ist sinnvoll, wenn die Überlastung nur vorübergehend ist, ist jedoch eine sehr kostspielige Lösung, wenn die Überlastung dauerhaft ist. Sie müssen diesen Fall machen.

#9
  0
BryKKan
2018-10-12 21:13:25 UTC
view on stackexchange narkive permalink

Die anderen Antworten sind alle sehr gut. Ich würde jedoch einen anderen Ansatz vorschlagen. Wenn dies ein wiederkehrendes Problem ist, ist es möglicherweise, wie Ihr Manager zu denken scheint, ein Hinweis darauf, dass Ihre Arbeitsbelastung zu hoch ist, als dass seine Erwartungen von Ihnen allein erfüllt werden könnten.

Sie weisen darauf hin Seine Lösung hierfür funktioniert nicht, und Sie müssen ihm möglicherweise erklären, warum. Die anderen Antworten decken die meisten möglichen Argumente ab, die Sie in dieser Hinsicht vorbringen könnten. Wenn Sie jedoch eine Änderung sehen möchten, ist der beste Weg, dies zu erreichen, im Allgemeinen, Ihre eigene alternative Lösung vorzuschlagen.

Anstatt weiterhin Zeitarbeiter einzustellen, könnte er eine dauerhafte Erweiterung des Teams in Betracht ziehen. Wenn Sie tatsächlich bereit sind, Aufgaben zu delegieren, dies aber nicht können, weil die Codequalität nicht den Anforderungen entspricht, müssen Sie diesen Teil beheben. Wenn Sie jedoch möchten, dass jemand in das Erlernen Ihrer Architektur und Ihres Codierungsstils investiert, muss er eine gewisse Erwartung haben, dass sich die Investition auszahlt. Eine dauerhafte Erweiterung des Teams ist mit zusätzlichen Kosten verbunden, aber die verbesserte Qualität ihres Beitrags und der geringere Bedarf an Überwachung / Nacharbeit können sich langfristig leicht amortisieren.

#10
  0
Brythan
2018-10-15 07:23:39 UTC
view on stackexchange narkive permalink

Unit-Tests

Diese Antwort schlägt vor, dass Sie Unit-Tests schreiben und sie für die Tests codieren lassen. Das ist ein Ansatz, aber es verlässt Ihren Job als Unit-Test. Das ist vielleicht nicht das, was Sie wollen. Und um die besten Ergebnisse zu erzielen, müssen Sie großartige, umfassende Tests schreiben und gute Entwickler haben. Weil Tests eher das Ergebnis als den Prozess steuern. Es ist durchaus möglich, miesen (schwer zu wartenden und zu ändernden) Code zu schreiben, der Tests besteht.

Ein anderer Ansatz besteht darin, die Dinge umzuschalten. Lassen Sie die anderen Entwickler die Tests schreiben, anstatt Tests zu schreiben. Sie schreiben trotzdem weiter den Code, den Sie schreiben wollten. Wenn es die Tests besteht, großartig. Wenn dies nicht der Fall ist, können Sie überlegen, warum. Wenn der Grund dafür ist, dass der Test nicht funktioniert (was bedeutet, dass er nicht den tatsächlichen Anforderungen entspricht), löschen Sie den Test. Notieren Sie diese Entscheidung jedes Mal, wenn Sie dies tun.

Sie können auch die bestandenen Tests auf Nützlichkeit überprüfen. Wenn sie beim Codieren der Anforderungen nicht hilfreich sind, löschen Sie sie erneut. Notieren Sie die Entscheidung.

Dies setzt voraus, dass es einfacher ist, Tests zu überprüfen als Code. Es ist also viel einfacher zu erkennen, ob ein Entwickler vom Schreiben von Tests zum Code übergehen kann, als zu bestimmen, ob der Code des Entwicklers allein gut genug ist.

Schreiben Sie am Ende der Amtszeit des temporären Entwicklers Statistiken darüber, wie viele Tests nützlich oder gelöscht waren. Das sind dann die Informationen, die Sie Ihrem Chef präsentieren, wenn Sie gegen die Einstellung weiterer Zeitarbeiter argumentieren. Geben Sie an, wie viel Zeit für die Überprüfung der Tests benötigt wurde und wie viel Zeit für die Erstellung der endgültigen Testsuite benötigt wurde. Wenn diese Zahl netto negativ ist, hat das Unternehmen Geld für einen "Entwickler" bezahlt, um Ihre Software zu verschlechtern. Selbst wenn es netto positiv ist, vergleichen Sie die Kosten der Zeit mit Ihren Kosten.

Nach meiner Erfahrung reagieren Chefs am besten auf finanzielle Argumente mit Beweisen. Ohne die Beweise können sie das Argument zurückweisen. Mit technischen, aber nicht finanziellen Beweisen werden sie die Beweise nicht unbedingt verstehen (einige mögen, aber viele nicht). Drücken Sie also alle technischen Beweise in finanzieller Hinsicht aus.



Diese Fragen und Antworten wurden automatisch aus der englischen Sprache übersetzt.Der ursprüngliche Inhalt ist auf stackexchange verfügbar. Wir danken ihm für die cc by-sa 4.0-Lizenz, unter der er vertrieben wird.
Loading...