Vorübergehendes Hinzufügen externer freiberuflicher Entwickler zu einem bestehenden Entwicklerteam (auch bekannt als Hybrid-Team). Vor-und Nachteile?

Welche Vor- und Nachteile hat es, einem bestehenden Entwicklerteam für ein kleines Projekt externe Softwareentwickler hinzuzufügen? Was sind die Vor- und Nachteile?

Für mich:

Vorteile:

  • Die Entwicklung sollte theoretisch insgesamt schneller sein als das bestehende Team
  • Da gute Entwickler schwer zu finden sind, ist es eine Option, schnell Entwicklerpower zu bekommen
  • Vielleicht guter konstruktiver Input von den externen Entwicklern, da sie neu im Produkt sind

Nachteile:

  • Teuer
  • Nicht sicher, wer für den Code der externen Entwickler verantwortlich sein wird
  • Externe Entwickler müssen sich mit dem vorhandenen Code vertraut machen. Jemand muss ständig überprüfen, was er produziert, damit er nicht sein eigenes Parallelprodukt in das bestehende Produkt einbaut
  • Viel mehr Bedarf an Code-Reviews, Gesprächen, Meetings und der Verfeinerung von Produktkonzepten

Alles in allem denke ich, dass es für größere, neue Teile des Produkts funktionieren könnte. Für etwas Kleines, das einen bestehenden Entwickler 2-4 Tage benötigt, lohnt es sich nicht, die externen Entwickler darin zu schulen.

Was sind Ihre Vor- und Nachteile? Haben Sie praktische Erfahrungen mit dieser Art von „Hybrid-Teams“? Bitte teilen!

Bitte hören Sie auf, was auch immer Sie tun, und lesen Sie Fred Brooks' "The Mythical Man-Month".
Das Brooks-Gesetz hat die Menschen effektiv dazu veranlasst, mit der Analyse aufzuhören und davon auszugehen, dass es sich um ein wahres Naturgesetz handelt, das sich ständig auf die gesamte Arbeit auswirkt. Ziemlich traurig.
@DavidEspina Es ist fraglich, ob man Brooks Gesetz als solches beachten sollte, bis Sie die notwendige Analyse liefern können, um zu beweisen, dass es für Ihre Situation falsch ist. Das Brook's Law ist normalerweise sehr genau, wenn der Problembereich nicht ausreichend verfeinert wurde, um genau zu zeigen, wie zusätzliche Ressourcen effektiv gemacht werden könnten.
Arbeit hat unterschiedliche Grade an Ressourcenelastizität, die von extrem hoch, wie z. B. Umzugskartons, bis zu null reicht, wie z. B. das Hinzufügen eines weiteren Gehirnchirurgen im Operationssaal. Ob Sie sich erst bewegen, nachdem Sie das Gegenteil bewiesen haben, hängt ausschließlich von Ihrer Risikobereitschaft und Ihrem Fachwissen in Ihrem Bereich ab. Aber was ich am meisten bei Brooks Law in diesem Forum und bei der Arbeit beobachtet habe, ist, dass die meisten Leute es wie die Schwerkraft behandeln: wahr in allen Fällen ... es lohnt sich nicht, es zu untersuchen. Und das ist einfach traurig.

Antworten (2)

Das größte Problem ist das Gesetz von Brooks

Sie haben nicht gesagt, warum Sie versuchen, das kleine Projekt vorübergehend um freiberufliche Entwickler zu erweitern. Wenn Ihr Projekt verspätet ist und Sie hoffen, die Zeitlinie zum Einsturz zu bringen, denken Sie an das Brooks-Gesetz: „Wenn Sie einem verspäteten Softwareprojekt Arbeitskräfte hinzufügen, wird es später“.

  1. Es dauert einige Zeit, bis die dem Projekt hinzugefügten Ressourcen produktiv werden.

  2. Reduziert den Beitrag des internen Teams aufgrund der Notwendigkeit, die neue Person zu schulen sowie den Code zu überprüfen und so weiter.

  3. Die Kommunikationskosten sind für Sie möglicherweise kein so großes Problem, da Sie sagten, es sei ein kleines Projekt.

Neben dem Gesetz von Brooks ist in Ihrem Fall der größere Faktor die potenzielle Frustration für Ihr internes Team. Sie müssen viel Händchen halten, um den Freiberufler zum Laufen zu bringen. Dies ist während der Zeit, in der sie in einem späten Projekt unter Zeitdruck stehen. Nachdem sie gekommen und gegangen sind, muss sich das interne Team mit den Folgen aller Probleme befassen, die sich aus ihrem Code ergeben.

Meine Empfehlung lautet also:

  1. Fügen Sie vorübergehend keinen Freelancer hinzu.

  2. Wenn Sie einen Freiberufler hinzufügen müssen:

    a. Wenden Sie sich zuerst an die internen Entwickler.

    b. Lassen Sie sie an der Auswahl des Freelancers und der Festlegung der Grundregeln teilhaben.

    c. Lassen Sie sie den gesamten Code des Freiberuflers überprüfen und akzeptieren, mit der ausdrücklichen Vereinbarung, dass sie das Eigentum an diesem Code übernehmen, wenn der Freiberufler geht.

    d. Bitten Sie Ihren Tester, die Freelancer-Arbeit gründlicher zu testen.

Ich habe "con" zunächst als "Confidence Game" gelesen, nicht als "negative Implikation". Ich dachte, ich würde einen ganz anderen Artikel lesen.
@MarkC.Wallace Danke für den Hinweis. Ich habe es geändert. Ich ging mit dem Begriff des OP, ohne zu wissen, wie es herauskam :(

Es hängt von Ihrem Team ab, wenn es in der Lage ist, Aufgaben zu delegieren, kann es hilfreich sein, zusätzliche Manpower zu haben, da sonst die Wartung der Freelancer viele Ressourcen verschlingt und der Gesamtnutzen möglicherweise sogar negativ ist.

Sprechen Sie mit den Entwicklern, welche Aufgaben sie mit wenig Aufwand abgeben könnten, also erklären Sie es einfach schnell, lassen Sie den Freelancer arbeiten und beantworten Sie vielleicht einige Fragen. Schätzen Sie dann, wie lange es dauert, diese Aufgaben allein und mit dem Freiberufler zu erledigen, und entscheiden Sie dann.

Und nur weil sich jemand Freiberufler nennt, heißt das noch lange nicht, dass er wirklich ein Experte ist, also fügen Sie das Risiko hinzu, Probleme einzuführen, die Ihre eigenen Leute nicht schaffen würden.

Kannst du das Geld auch in deine Leute investieren? Bringen Sie ihnen eine Ausbildung in einer neuen Technologie bei, die sie effizienter macht, zum Beispiel, wenn sie für Apple entwickeln, könnten sie Swift anstelle von ObjectiveC lernen.