Seit 4 Jahren bin ich Solo-Entwickler für eine kleine Firma. Wir haben eine Handvoll gut etablierter Produkte in einer Nischenbranche. Wir werden bald 1-2 Entwickler einstellen, und das wird wahrscheinlich die Art und Weise ändern, wie die Dinge hier funktionieren.
Obwohl ich keinen "echten" Titel habe, werde ich dieses Team "leiten". Ich möchte eine sehr gut organisierte und produktive Programmierabteilung für mein Unternehmen aufbauen. Ich habe diesen Solo-Job direkt nach dem College bekommen. Während ich als Programmierer in dieser Branche erfahren bin, fehlt mir eine Menge Erfahrung in der Teamprogrammierung. Ich habe das Gefühl, dass es entscheidend sein wird, mit dem rechten Fuß zu beginnen.
Im Moment bin es nur ich, ein paar Computer und ein SVN-Server. Ich suche nach allgemeinen Hinweisen zum Aufbau eines Teams von Grund auf.
Antworten:
Bringen Sie Ihr Haus in Ordnung und stellen Sie sicher, dass die Dinge für eine gemeinsame Anstrengung eingerichtet sind.
Wenn Sie die folgenden Elemente einrichten und in Ihren Entwicklungsprozess integrieren, können Sie die Mitarbeiter viel einfacher an Bord holen, verfolgen, was gerade getan wird, und verhindern, dass die Dinge "chaotisch" werden.
quelle
... und mit Erfahrung in großen Unternehmenssoftwareprojekten.
Sie helfen Ihnen, Ihre Prozesse zu industrialisieren, und Sie werden wahrscheinlich viel von ihnen lernen.
Sie bringen ihnen Ihren Nischenmarkt bei.
Wenn Sie eine solche Person nicht finden können, empfehle ich Ihnen, an Schulungen zum Thema Teammanagement teilzunehmen. Ich empfehle Ihnen als Einstieg eine Scrum-Zertifizierung .
quelle
Es mag offensichtlich sein, aber stellen Sie sicher, dass Sie denken, dass Ihnen die Arbeit mit den neuen Mitarbeitern wirklich gefällt. Versuchen Sie, ein paar Biere zu bestellen, wenn beide versuchen, das Team dazu zu bringen, sich wie eines zu fühlen.
Sie müssen sie auch auf alle Codierungsstandards aufmerksam machen, die Sie befolgen, und auf alle gängigen Techniken, die Sie verwenden, wie in Ihrer Codebasis wiederholt.
Schließlich sollten Sie alle in der Lage sein, sich in den Prozess einzubringen und zu verbessern ... vorausgesetzt, Sie befolgen andere Ratschläge und stellen jemanden ein, der die Fähigkeiten besitzt, Ihre zu ergänzen.
quelle
Machen Sie nicht den Fehler, Ihr Verlangen / Ihren Ehrgeiz, "verantwortlich" zu sein, in die Quere kommen zu lassen. Wenn Ihr Unternehmen Entwickler mit mehr Erfahrung als Sie anstellt, sind die neuen Mitarbeiter möglicherweise besser für die Teamleiterrolle geeignet als Sie.
Ihr wahrer Wert für das Team und das Unternehmen ist Ihre genaue Kenntnis der derzeit implementierten Produkte.
quelle
Dies ist der Situation, in der ich mich vor einigen Monaten befand, sehr ähnlich. Der beste Rat, den ich geben kann, ist, die typische Hybris des Programmierens fallen zu lassen und die Besten der Besten einzustellen, die sich Ihr Unternehmen leisten kann.
Ich war eine Weile "verantwortlich", aber ein Teammitglied mit mehr Erfahrung stieg auf und ich gab gerne meine administrativen Aufgaben auf, damit ich das tun konnte, was ich am besten konnte, indem ich Qualitätscode schrieb. Ich bin immer noch ein Mentor für das Team, wie Sie sein werden.
Wenn Sie in dieser Situation das tun, was für das Unternehmen am besten ist, werden Sie belohnt.
quelle
Es wird hitzige technische Diskussionen geben: Neue Programmierer haben Vorurteile, sie haben ein paar Methoden kennen gelernt, und wenn sie mit einer neuen Methode konfrontiert werden, die sie nicht verstehen, werden sie zuerst denken, dass dies keinen Sinn ergibt und geändert werden muss . Programmierer, die jahrelang alleine gearbeitet haben, sind wahrscheinlich defensiv in ihrer Arbeit, und auch ihre Arbeit wird aufgrund der Anzahl der Probleme, die sie gelöst haben, ohne Dinge mit anderen Leuten zu besprechen, etwas eigenwillig.
Seien Sie sich dieser Vorurteile bewusst, begrüßen Sie den neuen Input, seien Sie nicht zu defensiv und treffen Sie keine voreiligen Entscheidungen, um alles zu ändern.
Die Arbeit in einem Team hat viele gute Seiten, insbesondere die Überprüfung Ihres Codes durch einen Kollegen. Bestehen Sie darauf für alle Teammitglieder, einschließlich Sie selbst von Anfang an.
quelle
Als leitender Entwickler benötigen Sie einen Manager, der sich mit den Personalrichtlinien Ihres Unternehmens befasst. (insbesondere Gegenstände wie Urlaubsansprüche, Krankenstandsverfahren und Disziplinarverfahren, obwohl ich hoffe, dass Sie es nie brauchen werden)
Abhängig von den Fähigkeiten und Fertigkeiten der neuen Mitarbeiter, mit denen Sie beginnen, einige Aspekte Ihrer aktuellen Arbeit zu delegieren, benötigen Sie nun die Zeit, um Prioritäten zu verwalten und Zeitpläne zu erstellen.
Eine gute Quelle für einfache und grundlegende Managementfähigkeiten, was und wie professionell zu tun ist, ist http://www.manager-tools.com . Sie führen regelmäßig Podcasts zu Management- und Karriereberatung durch, ganz zu schweigen von einem umfangreichen Katalog an Material für Sie.
quelle
Viele der zur Verfügung gestellten Tipps sind exzellent, ich möchte nur ein paar aus meiner Erfahrung in einer ähnlichen Position hinzufügen.
quelle
Das Buch Brownfield Application Development in .Net enthält einige Ideen, die meiner Meinung nach helfen sollten. Ein Teil des Ratschlags besteht darin, die Dinge so einzurichten, dass sie für alle Teammitglieder und für alle Zeiten wiederholbar sind.
quelle