2010-02-12 10 views
11

Um mögliche Einwände gegen die Idee eines Nicht-Programmierers, der Programmierer verwalten muss (Bedürfnisse müssen in einem kleinen Software-Start-up) beiseite zu legen, was sollte der Nicht-Programmierer versuchen zu lernen darüber, wie man besser mit den Programmierern arbeiten kann? Das bin ich.Was sollte ein nicht-programmierender Manager lernen?

Ich sage "Nicht-Programmierer", aber eigentlich habe ich ein paar Jahre in der Industrie verbracht und habe versucht zu lesen und selbst erziehen, weil ich das Zeug interessant finde und ich mehr lernen möchte. Aber die Realität ist, dass ich keinen Code zu einem professionellen Standard schreiben kann und ich weiß, dass es eine Weile dauern wird, um solches Wissen aufzubauen, und die Leute sagen mir, ich sollte es nicht einmal versuchen. Vielleicht würden die Programmierer lieber jemanden wie mich, der einfach nur die Hölle hält. Wenn nicht, gibt es eine bestimmte Richtung, die ich in meinem Selbststudium einschlagen sollte, was mich effektiver machen würde?

Ich habe Joels Buch gelesen und er hat viel zu sagen, zum Beispiel über gute Arbeitsbedingungen für Programmierer. Ich frage hier nicht nach diesem Aspekt des Managements - meine Frage ist wirklich eine Frage darüber, ob es bestimmte technische Fähigkeiten gibt, die ich anstreben sollte, anstatt einfach mein unstrukturiertes "Wandern" um Dinge, die mich interessieren, fortzusetzen.

+0

Dies ist im Wesentlichen eine Betrogene von http://stackoverflow.com/questions/326256/ Was-ist-das-beste-Software-Projekt-Management-Buch – Ether

+0

Welches von Joels Büchern hast du gelesen? Ich glaube, dass er vier hat! Und die meisten seiner Artikel sind auf seinem Blog. – sixtyfootersdude

Antwort

10

Wenn Sie Peopleware nicht gelesen haben, sollten Sie es unbedingt lesen. Es geht um Ihre Probleme. Kurz gesagt, es erklärt, dass der Job eines Managers kein technischer Job ist (obwohl es natürlich nicht weh tut, wenn (s) er über technische Aspekte der Entwicklung kenntnisreich ist). Die Hauptaufgabe des Managers ist Kommunikation, nicht mit Technologie zu tun. Ihre Hauptanliegen sind unter anderem:

  • mieten der beste Software-Entwickler zur Verfügung,
  • ihnen interessante Herausforderungen geben,
  • sie motiviert halten, und
  • versuchen, alle Hindernisse aus dem Weg zu bekommen .

Das ist, was Sie als sie es besser machen - und all dies sind „Menschen“ Fragen, anstatt technischen Aufgaben.

Ich meine nicht, dass Sie nicht versuchen sollten, mehr über Kodierung zu lernen oder selbst zu üben - nur dass es Sie vielleicht nicht zu einem besseren Manager macht und nicht unbedingt Ihrem Projekt zum Erfolg verhilft.

1

Ja, Sie sollten auf jeden Fall Ein- und Ausgänge verstehen. Das sind die Grundlagen der Programmierung. Wann immer jemand programmiert, haben sie Dinge, die ihnen zur Verfügung stehen (Inputs) und dann erwarten Sie, dass sie Ihnen ein paar Dinge zurückgeben (Outputs). Wenn Sie dies verstehen und wie Entwickler miteinander und mit Ihnen über diese Ein- und Ausgänge kommunizieren müssen, werden Sie wahrscheinlich an einem guten Ort sein.

Auch müssen Sie verstehen, dass manchmal Codierung einige Zeit dauern kann und Tests in der Regel doppelt so lange dauert ... es sei denn, es ist eine wirklich einfache Codierung Aufgabe.

1

Ich würde nur über die Grundlagen von allem, was Ihr Team verwendet, lesen, damit Sie nicht von den Entwicklern, die Sie verwalten, snowballed werden. (Jetzt muss ich mich verstecken, um die Bohnen zu verschütten ...).

Überprüfen Sie auch Rands in Repose.

2

Ich stimme über People, und ich würde auch sagen, Brook Der Mythos des Mann-Monats erforderlich Lesen.

+0

Die wichtigsten Sachen im MMM sind die ersten paar Kapitel. Der Rest ist ziemlich schlecht datiert. Die Hauptsache ist, zu verstehen, dass das Werfen von Ressourcen bei einem bereits verspäteten Projekt fast immer die Dinge verschlimmern wird. –

1

Meine $ 0.02 - Ich denke nur, dass du diese Frage hier postest bedeutet, dass du auf dem richtigen Weg bist. Ich kann nur für mich selbst sprechen - (ich hatte mehrere nicht-programmierende Manager) diejenigen, von denen ich dachte, dass sie die Projekte am meisten unterstützten, waren die, die sich um die Schnittstellen mit den Kunden und den anderen Managern kümmerten, halfen mit der Dokumentation und hielten den Überblick von den Projektplänen und versuchen, den Programmierern zu helfen, Fristen zu erfüllen, indem sie nichttechnische Hindernisse (neue Werkzeuge, Hardware, Personal, etc ...) auflöst. Ermutigen Sie Ihre Programmierer, kreativ zu sein und als Team zusammenzuarbeiten, um ein Produkt zu erstellen - Sie werden von mehr Nutzen sein, wenn Sie "versuchen", einige technische Dinge zu lernen.

0

Unser CIO hat keinen technischen Hintergrund, und er zieht die Verwendung von Windows (und vielleicht auch OSX) als Server! Er mag Unix/Linux nicht und das Unix/Linux-Team schrumpft.

Wenn ich Sie wäre, ich werde mich über die großen Bilder erzogen halten in meinem Gebiet, was die jüngsten Fortschritte sind etc

+0

Sie mögen sie vielleicht nicht, aber es gibt viele gute - nicht technische - Gründe, warum Windows Server ein fairer Anruf ist. Ich glaube nicht, dass das etwas gegen ihn ist, wenn man seine Argumentation nicht kennt. –