Ich kämpfe damit, nachzuverfolgen, was ich und die Leute in meinem Team tatsächlich jeden Tag tun. Ich bekomme ein gutes Gesamtbild, wenn ich jede Woche die ausgefüllten Karten durchgehe, und Aufrichte helfen ein bisschen, aber ich habe das Gefühl, dass ich den Arbeitsalltag meines Teams nicht gut im Griff habe. Die Karten bleiben tagelang in Betrieb, ohne dass sie täglich aktualisiert werden. Einige Ingenieure sind meines Erachtens nicht besonders kommunikativ.
Ich habe darüber nachgedacht, eine Art tägliche Aufzeichnung zu implementieren, die jeder ausfüllt (über eine Mailingliste oder ein freigegebenes Google-Dokument), aber dies scheint ziemlich umständlich und manuell zu sein.
Das Überwachen der GitHub-Aktivität macht einen guten Job, kann jedoch mit der Anzahl der E-Mails, die täglich gesendet werden, etwas überfordert sein. Ich habe darüber nachgedacht, ein Digest-System dafür aufzubauen, aber ich habe keine Zeit zu verlieren.
Welche Strategien haben Sie implementiert, um den Überblick über das zu behalten, was Ihr Team täglich tut, damit Sie die Arbeit an laufenden Aufgaben messen können?
quelle
Antworten:
Ich rede mit ihnen.
Technologie kann soziale Probleme nicht lösen. Sie haben kurze Morgenstandzeiten. Was hast du gestern gemacht? Was wirst du heute tun? Irgendwelche Hindernisse?
Wenn sich etwas faul anhört (oder ich neugierig bin), halte ich inne und frage: "Sie haben gestern an XYZ gearbeitet, wie ist das ausgegangen?" Dies zwingt die Menschen, aufmerksam zu sein und tatsächlich zu wissen, was los ist. Es hält Sie auch als Teamleiter auf dem Laufenden (und Sie müssen aufpassen und wissen, was tatsächlich los ist). Dies muss pünktlich und kurz sein ( maximal 10 Minuten ). Alles andere und die Leute werden ihre Arbeit nicht "zurückstellen". Sie werden anhalten und auf den Standup warten und sich dann Zeit nehmen, um wieder anzufangen. Einige werden das sowieso tun, aber es ist größtenteils unvermeidlich.
Dann schaue ich nachmittags bei allen vorbei. Nicht jeden Nachmittag (obwohl es für neue Leute mehr als jeden Nachmittag sein könnte), nicht zur selben Zeit, sondern zur selben Zeit (also sowohl informell als auch regelmäßig). "Irgendwelche Probleme? Irgendwelche Hindernisse?"
Sie werden überrascht sein, wie oft Sie auf Probleme stoßen, wenn die Leute eins zu eins sind.
Wenn die Leute keine Probleme haben, großartig; zurück an die Arbeit. Wenn sie nicht die ganze Woche Probleme haben ? Problem. Sie fordern sie nicht genug heraus oder sie öffnen sich nicht. Fragen Sie, wie es XYZ (das sie im Standup erwähnt haben) geht. Lassen Sie sie Dinge erklären.
Dies ist kein Mikromanagement. Sie sagen ihnen nicht, wie sie ihre Arbeit machen sollen. Sie babysitten sie nicht. Sie sind da, um Hindernisse aus ihrem Alltag zu entfernen. Dazu benötigen Sie Informationen. Solange Sie Ihr Team von Besprechungen fernhalten und Projektmanager aus ihren Cubes fernhalten, wird eine Person, die einmal am Tag vorbeikommt, keinen Kummer verursachen. Aber all diese Interaktionen müssen von der Ader "Ich bin hier, um dir zu helfen" kommen.
Eine andere Sache, die ich tun werde, ist das Überprüfen von Changesets (von mir selbst, informell). Ich kann dann sehen, wie oft Leute einchecken, wie groß ihre Änderungssätze sind, wie das mit dem übereinstimmt, was sie gemeldet haben, wie oft sie Dinge wiederholen, wie viele Bugfixes sie haben und so weiter. Ein Workitem, dessen Status auf "erledigt" geändert wird, ist nahezu bedeutungslos. Schauen Sie sich den Code an. Scheint es erledigt zu sein?
Anmerkung: Ein äußerst schwerwiegender Nebeneffekt: Wie groß ist Ihr Team? Ist es mehr als 7 Personen? Natürlich werden Sie nicht in der Lage sein, alles im Auge zu behalten, wenn Ihr Team zu groß ist.
quelle
Verwalte deine Entwickler nicht im Mikromanagement!
Die produktive Softwareentwicklung erfordert lange konzentrierte mentale Anstrengungen. Es ist nicht realistisch, von ihnen eine konstante Leistung zu erwarten. Wenn Sie anfangen, sie täglich zu messen, strukturieren sie ihre Arbeit neu, sodass sie immer einige erkennbare Artefakte produzieren, die Sie jeden Tag sehen können. Dies kann sich möglicherweise positiv auf Ihre Softwarequalität auswirken. Dies wird sich mit ziemlicher Sicherheit negativ auf die Effizienz Ihrer Entwickler auswirken.
quelle
Wie Robert Harvey vorschlägt , leiten Sie Ihr Team nicht auf kleinstem Raum. Geben Sie dem Team einige priorisierte Aufgaben mit konkretem Geschäftswert und lassen Sie Ihr Team herausfinden, wie dieser Geschäftswert am besten erreicht werden kann.
Wenn das Team geschäftlichen Nutzen bringt, sollten Sie glücklich sein. Wie sie sicherstellen, dass sie die angeforderten Funktionen bereitstellen, sollte ihnen überlassen bleiben.
Jedoch:
Dies könnte auf einen Prozessmangel hinweisen.
Es könnte das Team sein, das nicht wirklich als Team funktioniert und nicht eingreift, um sich gegenseitig zu helfen, wenn sie feststecken. Es könnte auch die Kommunikation mit dem Unternehmen sein. Die Aufgaben sind zu groß, so dass es schwierig wird, herauszufinden, was benötigt wird. Spezifikationen sind nicht klar.
Es könnte auch sein, dass es überhaupt kein echtes Problem gibt. Vielleicht funktioniert das Team nur gut mit Karten, die wichtige Teile der Arbeit darstellen, die Tage in Anspruch nehmen, und vielleicht funktioniert das Team gut, um dies zu erreichen.
Ich halte es für richtig, die Retrospektive als Plattform zu nutzen, um Ihre Besorgnis zum Ausdruck zu bringen. Manchmal ist es gut, Beobachtungen von außen zu erhalten.
Aber lassen Sie das Team herausfinden, ob es ein Problem gibt und was die Ursache dafür ist. Und seien Sie bereit zu akzeptieren, dass Sie möglicherweise die Art und Weise anpassen müssen, in der Aufgaben an das Team übergeben werden.
Denken Sie daran, dass das tägliche Aufstehen dem Team dabei hilft, die Arbeit zu organisieren. Es ist KEIN Werkzeug für Manager, um den Überblick über das, was das Team tut, zu behalten.
quelle
"Push Messaging" statt "Pull Messaging"
Ein Entwickler gelangt häufig in einen der folgenden für Sie wichtigen Status:
Idealerweise möchten Sie über diese Status einigermaßen aktuelle Informationen erhalten, ohne die tatsächliche Produktivität zu beeinträchtigen. Konstante "Sind wir schon da?" ist kontraproduktiv, aber es kann sein, dass Sie etwas Nützliches für die Zustände 2 bis 4 tun können, also müssen Sie sich über diese informieren.
Was funktionieren wird, ist eine Kultur des Push-Messaging, vorzugsweise auf automatisierte Weise. Möglicherweise müssen Sie nicht das gesamte Festschreibungsprotokoll anzeigen, aber Sie können ein "Dashboard" erstellen, in dem Sie die neueste Festschreibung oder das zuletzt gelöste Ticket (für Fehler oder Funktionen) jedes Teammitglieds sehen. Für den Rest der Situationen können Sie veranlassen, dass sie Ihnen proaktiv solche Aktualisierungen per E-Mail senden (hoffentlich sind sie seltener als Commits), oder Sie können sie fragen, ob Sie auf einem beliebigen Dashboard keinen kontinuierlichen Fortschritt sehen - wenn Sie eine haben Interne Vereinbarung, dass das Feststecken behoben werden muss (es kann sein, dass einige Funktionen nicht benötigt werden, wenn sich herausstellt, dass sie 80 Stunden und nicht 8 Stunden kosten). Dann werden Sie entweder auf dem Laufenden gehalten oder von Ihnen gestört.
Alternativ können Sie eine Kultur von https://idonethis.com/ täglichen Berichten erstellen, die an das gesamte Team gesendet werden - dies stellt sicher, dass sich auch andere auf derselben Seite befinden.
quelle
Eine Alternative zu einigen der anderen Antworten (kommunikationsorientiert) ist, dass die Aufgaben auf Ihren Notizkarten möglicherweise in kleinere Teile aufgeteilt werden können, zu denen Sie dann früher Feedback erhalten können.
Mit kleineren Stücken hat das Team das Gefühl , jeden Tag etwas zu erreichen, das sich im Aufstehen widerspiegeln sollte.
Der Nachteil ist, dass diese separaten Karten wahrscheinlich stark voneinander abhängen. Ein Team, das in der Lage ist, sehr leicht miteinander zu kommunizieren, ist hier von Vorteil, oder Teile können nicht so kombiniert werden, wie sie sollten. Möglicherweise müssen Sie auch einige Karten zurückhalten, wenn Sie bestimmte Dinge zuerst erledigen müssen.
Davon abgesehen werden die Leute immer noch stecken bleiben oder herausfinden, dass eine Aufgabe viel schwieriger ist, als sie oder Sie es von Zeit zu Zeit erwartet haben. Aus diesem Grund ist es immer noch hilfreich, Fragen offen im Stehen zu diskutieren, wo andere Ratschläge geben können, ohne die Person zu beurteilen, die Probleme hat.
Um das Problem des Mikromanagements zu beantworten, wie einige der anderen Antworten bereits angesprochen haben: Auch wenn die Menschen jeden Tag kleine Aufgaben erledigen, müssen sie einen breiteren Blick auf ihre geleistete Arbeit werfen , um ein Gefühl dafür zu bekommen, wie viel jede Person tatsächlich erledigt wird. anstatt sie nach ihren täglichen Leistungen zu beurteilen.
Ich schlage dies vor, weil ich in einem 8-köpfigen Team arbeite, in dem die Kommunikation sehr einfach und die Leute sehr aufgeschlossen sind. Wir erhalten Aufgaben, von denen nie erwartet wird, dass sie länger als zwei Tage dauern. Manchmal sind diese Aufgaben eng miteinander verbunden und wir müssen uns gegenseitig darüber auf dem Laufenden halten, wie wir unsere eigenen Aufgaben erledigen. Wir sind jeweils dafür verantwortlich, unserem Manager alle zwei Wochen mitzuteilen, was wir erreicht haben.
Nachdem Sie die Frage noch einmal gelesen haben, wird mir klar, dass Sie dies möglicherweise als Teammitglied und nicht als Führungskraft stellen und daher möglicherweise keine Kontrolle über Ihre Aufgaben haben.
quelle
Zunächst müssen Sie sich in Bezug auf Ihre Zeit und Fähigkeiten analysieren. Wenn Sie eine technische Person mit einigen praktischen Erfahrungen sind, können sich die Dinge von denen für den Fall unterscheiden, dass Sie nur ein Manager sind (der nicht über fundierte technische Kenntnisse darüber verfügt, woran Ihre Entwickler tatsächlich arbeiten), der nur sicherstellen muss, dass die Fristen eingehalten werden .
Der gemeinsame Punkt in beiden Fällen ist , dass Sie Ihr Team in der Lage sein müssen , erleichtern und ein Gefühl zu schaffen , dass Sie ihnen vertrauen. Sie beurteilen ihre Leistung nicht, sondern versuchen einfühlsam und hilfreich zu sein, damit ihre Erfahrung Spaß macht und leicht fällt.
Nehmen wir nun an, Sie sind nur ein Manager, wie oben erwähnt. In diesem Fall sind Sie möglicherweise nicht in der Lage, ihm / ihr zu helfen, selbst wenn ein Entwickler mit ernsthaften entwicklungsbezogenen Problemen konfrontiert ist. Das eigentliche Problem kann zeitaufwändig sein und erfordert auch Konzentration. Weiter vorausgesetzt, der Entwickler ist wirklich aufrichtig in seiner Arbeit und zahlt Vollzeit (sogar zusätzliche Zeit) für die Lösung dieses Problems, kann es aber leider immer noch nicht lösen. Und in einer solchen Situation (wenn Sie das Problem nicht einmal vollständig verstehen können) fragen Sie immer wieder nach dem Problem, indem Sie jeden Tag und sogar zwanglos zweimal am Tag Fortschritte erzielen. Das Ergebnis wäre extreme Frustration und Störung für den Entwickler. Egal, ob es sich um eine App zum Sammeln des täglichen Fortschritts oder um ein einfaches tägliches Stand-up-Meeting handelt, beides kann frustrierend sein.
Wenn Sie jedoch alle anderen Faktoren unverändert lassen, gehen Sie einfach davon aus, dass Sie über einen starken technischen Hintergrund verfügen und in der Vergangenheit an denselben Technologien gearbeitet haben. In diesem Fall ist es sehr hilfreich, täglich Fortschritte zu machen oder Stand-up-Meetings abzuhalten. Entwickler werden Ihnen und Ihrem Fachwissen mit Sicherheit vertrauen und die große Herausforderung, vor der sie stehen, gerne diskutieren. Sie werden einige Vorschläge machen, die hilfreich sein können, oder auch wenn sie nicht direkt hilfreich sind, helfen sie bei der Bereitstellung alternativer Ansätze.
Tägliche Stand-up-Meetings müssen jedoch in jedem Fall das Gefühl vermitteln, ein Teammitglied zu sein, kein Leiter / Lead / Manager. Wenn Ihre Teammitglieder Sie nicht auf dem gleichen Niveau wie Sie betrachten, können sie ihre Bedenken / Vorschläge / Probleme / Rückmeldungen usw. nicht mitteilen.
Ein weiterer Punkt, der berücksichtigt werden mussist die Größe Ihres Teams und die Zeit, die Sie für die Verwaltung haben, bevor Sie über die Verwendung einer automatisierten Fortschrittsverfolgungssoftware oder die Verbesserung Ihrer Interaktion nachdenken. Sie müssen sicherstellen, dass alle von Ihrem Team angesprochenen Probleme so schnell wie möglich gelöst werden können. Ein wesentlicher demotivierender Faktor für ein Teammitglied ist, dass seine Bedenken / Vorschläge / Rückmeldungen nicht ernst genommen oder nicht bewertet werden. Es ist wichtig, den täglichen Fortschritt zu kennen, aber nur, wenn Sie voll in die Teamarbeit eingebunden sind. Wenn Sie auch in einigen Nebengeschäften tätig sind, versuchen Sie nicht, mehr mit Ihrem Team zu interagieren. Stellen Sie sich eine Situation vor, in der die Reaktion Ihres Teams überwältigend ist und es seine Aufgaben rechtzeitig abgibt und Bedenken und Fragen aufwirft, Sie jedoch kein zeitnahes Feedback und keine Bewertungen abgeben können. In solch einer Situation,
quelle
Erstellen und nutzen Sie verschiedene IM-Chatrooms für die verschiedenen Konfigurationen. Einige können weit gefasst sein wie @engineers und andere können spezifisch sein wie @newFeatureA
Überlegen Sie, ob Sie täglich eine Überprüfung Ihrer Flugtickets vornehmen müssen.
Verwenden Sie eine offene Umgebung, die die Zusammenarbeit unterstützt, und stellen Sie sicher, dass sich QE und der primäre Produktbesitzer in der Mitte der Entwickler befinden. Sie werden viel mithören und eine Idee bekommen, wenn Sie Bildschirme in Ihrer Nähe sehen.
Wie Robert betont, ist es vor allem kein Mikromanagement (beachten Sie die Verwendung von "gesehen werden", dh unabhängig von Ihrer tatsächlichen Absicht).
Letztendlich verfolgen wir, was im Laufe der Zeit erreicht wurde und wie schnell wir damit sind. Sich auf den Fortschritt während des Tages zu konzentrieren, ist kontraproduktiv, da die Menschen demoralisiert werden und / oder gehen.
quelle
Ich bin überrascht, dass hier noch niemand das Repository-Messaging "verfolgt" oder "markiert" erwähnt hat, das in Systeme wie GitHub oder BitBucket integriert ist.
Unsere technischen Stakeholder (Projektleiter, Entwicklungs- und Support-Manager) verfolgen alle unser Anliegen und schreiben Aktualisierungshistorien zu ihren relevanten Projekten fest. Wir haben ein kleines Team (15 FTE + Vertragspartner), aber das scheint für uns zu funktionieren
An all diesen Dingen wird niemand gemessen, aber zusätzlich zu den wöchentlichen Statusberichten der PM gibt dies einen täglichen Einblick in das Projekt, um zumindest alle darüber zu informieren, an welchen Bereichen gearbeitet wird, sodass niemand auf die Sichtbarkeit verzichtet.
Es hat auch dazu beigetragen, die Transparenz zwischen Entwicklern und Auftragnehmern sowie unseren Geschäftsbeziehungen zu erhöhen, sodass jeder für seine Lieferpläne verantwortlich ist.
In Kombination mit RSS-Feeds, die mit bestimmten Repositorys oder in der gesamten Organisation verknüpft sind, konnten wir die Anzahl der E-Mails (wo gewünscht) begrenzen und über RSS-Reader einen ähnlichen Datensatz in Echtzeit und in Zusammenfassung bereitstellen. Für einige Benutzer ist dies Outlook, es handelt sich also im Grunde genommen um E-Mails, obwohl sie sich geringfügig unterscheiden. Für andere Benutzer verwenden sie einen vollwertigen RSS-Client mit allen zusätzlichen Filtern, die sie benötigen, um ihn genau an ihre Bedürfnisse anzupassen.
Wir hatten anfangs ähnliche Bedenken hinsichtlich des E-Mail-Aufkommens, aber unsere Endbenutzer kamen auf das RSS-System, ohne dass die Engineering Org viel tun musste, um Kunden vorzuschlagen, die Outlook nicht verwenden. Bei uns arbeiteten das ganze Jahr über wieder rund 20-30 FTE + -Auftragnehmer in verschiedenen Büros und Zeitzonen. YMMV natürlich.
quelle
Dies ist eine sehr marginale Ergänzung (und es ist nicht programmiererspezifisch), aber ich habe mit Asana in den letzten Projekten gute Erfolge erzielt .
Die Integration in vorhandene Tools für die Online-Zusammenarbeit ist mit Slack kein Problem . Es ist um einen Chatroom herum aufgebaut, dient aber als ziemlich minimalistischer Hub für andere Tools, einschließlich Asana, GitHub und Bitbucket. Es hat eine anständige Sammlung dieser "Integrationen", sowohl vorgefertigt als auch von der Community erstellt , wobei die API verwendet wird, mit der Sie natürlich Ihre eigene erstellen können.
quelle