Zu verstehen, warum bestimmte Funktionen nicht bereitgestellt werden, kann oft schwierig sein. Das Management könnte die Schuld den technischen Teams zuschieben, während diese mit dem Finger auf das Management zeigen. Unterdessen ist die Geschäftsseite in der Zwickmühle: Sie versucht, die Grundursache zu ermitteln und gleichzeitig ungeachtet der Umstände Ergebnisse zu erzielen. Dieses Szenario tritt typischerweise nach erheblichem Unternehmenswachstum auf oder wenn frühere Probleme, die zuvor leicht zu beheben waren, im Laufe der Zeit vernachlässigt wurden. Es ist ein weit verbreiteter Irrtum, dass alle Probleme in einem Technologieunternehmen rein technischer Natur sind; das ist weit von der Wahrheit entfernt.
In diesem Artikel werde ich Bereiche innerhalb der Organisation eines Unternehmens skizzieren, die die Bereitstellung von Funktionen erheblich behindern können. Ich werde auch Untersuchungsanweisungen vorschlagen, um die Grundursachen zu ermitteln, die dann innerhalb Ihrer Autoritätsebene eskaliert oder gelöst werden können.
Es ist entscheidend, unsere Arbeitsumgebung zu verstehen, bevor wir Änderungen oder Verbesserungen umsetzen. Obwohl viele aufschlussreiche Bücher zu diesem Thema geschrieben wurden, sind nicht alle Ansätze für jedes Unternehmen geeignet. Dies bedeutet nicht, dass wir etwas falsch gemacht haben, sondern vielmehr, dass wir die Einzigartigkeit jedes Unternehmens anerkennen.
Ein wichtiger Hinweis ist, dass sich die hier geteilten Erkenntnisse in erster Linie auf die Softwareentwicklung beziehen und am ehesten auf Unternehmen oder Abteilungen mit 50 oder mehr Mitarbeitern anwendbar sind.
Machen Sie sich zunächst einmal mit der Größe und Struktur Ihres Unternehmens vertraut. Identifizieren Sie die verschiedenen Abteilungen und klären Sie Ihre Erwartungen an jede einzelne. Beurteilen Sie, ob alle diese Abteilungen notwendig sind. Erstellen Sie ein Diagramm der Organisationsstruktur, in dem jede Abteilung und ihre Rollen detailliert beschrieben werden. Stellen Sie sicher, dass Sie verstehen, was sie tun und warum sie existieren. Oft besteht jede Abteilung aus mehreren Teams – nehmen Sie diese ebenfalls in Ihr Diagramm auf, beschreiben Sie sie jedoch vorerst nicht, sondern nennen Sie lediglich Teamnamen.
Wenn Unternehmen wachsen, können Organisationsstrukturen komplex werden, was es schwierig macht, den Fortschritt zu verfolgen. In dieser Komplexität verlieren Sie möglicherweise die ursprünglichen Gründe für die Schaffung bestimmter Abteilungen oder Teams aus den Augen. Einige Teams wurden möglicherweise eingerichtet, um Probleme anzugehen, die nicht mehr relevant sind. So kann es auf hoher Ebene aussehen.
Was kommt als nächstes, nachdem Sie ein klares Diagramm Ihrer Organisationsstruktur haben?
Als nächstes ist es wichtig, die Hierarchie Ihrer Mitarbeiter abzubilden. Es ist entscheidend zu verstehen, wer wem unterstellt ist und warum. Linienmanager müssen effektiv mit ihren Untergebenen kommunizieren, unabhängig davon, ob sie eine große Geschäftseinheit oder ein kleines Team leiten. Die Kommunikation sollte klar sein, entweder in technischer oder geschäftlicher Sprache, da der Umgang mit beiden eine Herausforderung sein kann. In größeren Unternehmen gibt es möglicherweise direkte und funktionale Manager mit unterschiedlichen Verantwortungsbereichen, die in Ihrem Hierarchiediagramm klar dargestellt werden sollten.
Eine Mitarbeiterhierarchie verdeutlicht nicht nur die Berichtslinien, sondern hilft auch dabei, vertikale Hierarchien innerhalb der Organisation zu identifizieren. Vertikale Hierarchien sind hierarchische Strukturen, die als gemeinsame Ressourcen für mehrere Abteilungen dienen, wie Designer, HR, DevOps und sogar Entwickler. Obwohl vertikale Hierarchien sehr nützlich sein können, können sie manchmal zu Engpässen werden, insbesondere wenn Entwickler an verschiedenen Projekten arbeiten und Managern unterstellt sind, die mit den Geschäftszielen oder technischen Herausforderungen nicht vertraut sind. Infolgedessen erhalten Entwickler kein angemessenes Feedback und Manager keinen angemessenen Kontext. Daher ist das Verständnis der Hierarchie entscheidend, um potenzielle Probleme oder Priorisierungen der Aufgaben zu identifizieren und zu analysieren. Am Ende haben Sie so etwas.
Anmerkung
CEO — Vorstandsvorsitzender
CPO – Produktleiter
CTO – Technischer Leiter
COO – leitender Betriebsleiter
HD – Leiter Design
PO – Produktbesitzer
HE — Leiter Technik
HS — Leiter Vertrieb
HM — Leiter Marketing
D — Entwickler
PM — Produktmanager
TL – Technischer Leiter
EM – Technischer Leiter
S — Vertriebsleiter
M – Vermarkter
Vergleichen Sie Ihre Organisationsstruktur mit Ihren Berichtslinien, um Einblicke in die Beteiligung jedes Mitarbeiters an verschiedenen Aktivitäten zu erhalten. Darüber hinaus kann die Ausrichtung Ihrer Organisationsstruktur an der Mitarbeiterhierarchie dabei helfen, festzustellen, ob einzelne Mitarbeiter in denselben Abteilungen und Teams und auf ein gemeinsames Ziel hinarbeiten. Die Vorlage für die Zuordnung liegt ganz bei Ihnen, könnte aber so aussehen.
Es ist wichtig, den Bereich, in dem jedes Team arbeitet, klar zu definieren. Wenn ein Team mit Code arbeitet, geben Sie an, welche Dienste es nutzt und welche ihm gehören. Überraschenderweise können diese oft unterschiedlich sein. Stellen Sie fest, ob das Team ausschließlich innerhalb einer Abteilung arbeitet oder ob es sich um ein Plattformteam handelt, das an Kernfunktionen arbeitet, die von anderen Teams genutzt werden, ohne diese direkt zu ändern.
Das Erstellen einer Tabelle mit den folgenden Spalten kann sehr hilfreich sein: Teamname, Abteilung, Liste der eigenen Dienste, Liste der allgemeinen Dienste, die das Team ändern kann, aber nicht besitzt (idealerweise sollte es keine solchen Dienste geben) und eine kurze Beschreibung. Mithilfe dieser Tabelle können Sie feststellen, ob mehrere Teams an derselben Codebasis arbeiten, was zu Konflikten führt, oder ob ihre Verantwortungsbereiche nicht klar sind. Sie kann auch aufzeigen, ob ein Team hauptsächlich Fehler behebt oder sich ohne klaren Fokus mit verschiedenen Aufgaben beschäftigt.
Dieser Detaillierungsgrad ist von entscheidender Bedeutung, um Überschneidungen, Konflikte und Lücken in den Teamverantwortlichkeiten zu erkennen und so eine reibungslosere Zusammenarbeit und eine effizientere Projektausführung sicherzustellen.
Neben der Beschreibung der Teams ist es wichtig, die Positionen der Mitarbeiter im Allgemeinen zu verstehen und eine detaillierte Beschreibung ihrer Verantwortlichkeiten vorzubereiten. Oftmals kann sich das, was sich das Management vorstellt, erheblich von dem unterscheiden, was die Mitarbeiter tatsächlich tun. Die Softwareentwicklungsbranche bietet eine Vielzahl von Positionen, und die Erwartungen können von Unternehmen zu Unternehmen sehr unterschiedlich sein. Beispielsweise kann die Rolle eines Engineering Managers sehr unterschiedlich sein, ganz zu schweigen von Rollen wie Delivery Manager, Data Scientist, Architect, Technical Lead usw. In manchen Unternehmen wird von einer einzelnen Person möglicherweise erwartet, dass sie mehrere Rollen erfüllt.
Es ist wichtig, für jede Position klare Erwartungen festzulegen. Diese Klarheit hilft nicht nur dabei, Aktivitäten richtig zu verfolgen, sondern stellt auch sicher, dass die Mitarbeiter verstehen, was von ihnen erwartet wird und was außerhalb ihres Aufgabenbereichs liegt. Dies gilt für alle Positionen innerhalb der Organisation. Klare Rollendefinitionen helfen dabei, Überschneidungen zu vermeiden, Verwirrung zu reduzieren und sicherzustellen, dass alle effizient und organisiert auf gemeinsame Ziele hinarbeiten.
Inzwischen sollten Sie ein klares Verständnis Ihrer Unternehmensstruktur, der Hierarchie der Mitarbeiter und ihrer Verantwortlichkeiten haben. Auch wenn die Dinge verwirrend erscheinen mögen, besteht das Ziel darin, zunächst den aktuellen Stand zu verstehen, bevor Sie Änderungen vornehmen. Jetzt ist es an der Zeit, Ihren Feature-Delivery-Prozess zu beschreiben – wie Geschäftsfunktionen von der ersten Idee zur Produktion gelangen.
Bitte konzentrieren Sie sich hier nicht auf die technischen Aspekte wie CI/CD, sondern auf den Fluss vom Geschäft zu den Entwicklern, vorausgesetzt, Entwickler schreiben Code und stellen ihn direkt in der Produktion bereit. Das Ziel besteht darin, alle Probleme in Ihrem Prozess vom Geschäft zum Team zu identifizieren und zu sehen, wie gut die Mitarbeiter damit umgehen.
Berücksichtigen Sie diese Aspekte:
Denken Sie daran, dass jede Management- und Berichtsebene unabhängig von der Richtung Komplexität und Unsicherheit mit sich bringt. Letztendlich sollte Ihr Prozessdiagramm eine einfache Frage beantworten: „Wie?“
Sie können mit den Vorlagen experimentieren und sie Ihren Bedürfnissen anpassen. Hier ist ein sehr ausführliches Beispiel für einen Lieferprozess ohne Schlüsselpersonen, die die Lieferung regeln, aber mit Zeitrahmen.
Wenn Sie nicht sicher sind, wie Sie dieses Diagramm erstellen sollen, verwenden Sie BPMN (Business Process Model and Notation) oder ein einfacheres Format wie Rechtecke und Linien, um Klarheit und Verständnis für alle Beteiligten zu gewährleisten. Der Schlüssel liegt darin, den Prozess klar und verständlich zu gestalten.
Sobald Sie die Unternehmensstruktur, die Mitarbeiterhierarchie, die Teams und Positionsverantwortlichkeiten sowie den Lieferprozess abgebildet haben, teilen Sie alle Ihre Ergebnisse der Organisation mit und führen Sie eine Umfrage durch, vorzugsweise anonym. Diese Grundlage zeigt, wie Ihr Unternehmen funktioniert. Auch wenn Sie diese Übersicht möglicherweise selbst erstellt oder einige Aufgaben delegiert haben, ist es wahrscheinlich, dass Entwickler, Designer und Analysten nicht direkt beteiligt waren. Ihr Feedback ist entscheidend, um die Genauigkeit Ihrer Ergebnisse zu beurteilen.
Bitten Sie Ihre Mitarbeiter, die Qualität Ihrer Dokumentation zu bewerten. Was denken sie über den Lieferprozess? Spiegelt er wirklich wider, wie die Dinge erledigt werden? Wo sehen sie Hindernisse?
Erwarten Sie eine Vielzahl von Beschwerden und Feedback, die Ihnen helfen werden, Ihre Ergebnisse zu verfeinern, damit sie besser mit der Realität der Geschäftstätigkeit des Unternehmens übereinstimmen. Dieses Feedback ist wichtig, da der Kontext auf mehreren Hierarchieebenen oft verloren geht. Durch das Sammeln von Input von allen Ebenen erhalten Sie ein klareres und genaueres Bild der Organisation.
Nachdem Sie nun eine umfassende Beschreibung der Arbeitsweise Ihres Unternehmens oder Ihrer Abteilungen haben, können Sie mit der Analyse und Suche nach potenziellen Problemen beginnen. Diese Grundlage bietet einen klaren Ausgangspunkt für das Verständnis und die Lösung von Problemen.
Hier sind einige Bereiche, auf die Sie sich konzentrieren sollten:
Am Ende können Sie eine Liste mit echten Problemen Ihres Unternehmens erstellen, an denen Sie arbeiten werden. Priorisieren Sie sie von kritischen Problemen, die eine sofortige Interaktion erfordern, bis hin zu „nützlichen“ Verbesserungen.
Sie fragen sich vielleicht: „Das klingt ja alles großartig, aber wie kann ich die Dinge tatsächlich verbessern?“ Das ist eine gute Frage, und die ehrliche Antwort hängt von den spezifischen Problemen ab, die Sie identifizieren, und von Ihren Geschäftsanforderungen. Ein wichtiger Ratschlag ist jedoch, nicht zu versuchen, alles auf einmal zu ändern. Implementieren Sie stattdessen kleine Änderungen schrittweise, bewerten Sie die Ergebnisse und wiederholen Sie die Schritte. Denken Sie daran, dass der agile Ansatz nicht nur in der Softwareentwicklung funktioniert, sondern auf jede Art von organisatorischer Veränderung angewendet werden kann.
Hier sind einige Schritte zur Anleitung Ihres Verbesserungsprozesses:
Indem Sie diese Schritte befolgen, können Sie fundierte, schrittweise Änderungen vornehmen, die die Effizienz und Effektivität Ihres Unternehmens schrittweise verbessern.
Ich wollte allgemeine Probleme hervorheben, die in jedem Unternehmen oder jeder Abteilung auftreten können. Ich habe bewusst darauf verzichtet, bestimmte Frameworks oder Ansätze zu empfehlen, da jedes Unternehmen einzigartige Ziele und Strukturen hat und es entscheidend ist, zu entscheiden, was für Sie am besten funktioniert.
Auch hier ist es einfach, die Schuld den Entwicklern zuzuschieben, aber denken Sie daran, dass sie sich der geschäftlichen Prioritäten möglicherweise nicht bewusst sind oder durch unklare Lieferprozesse blockiert werden. Manchmal schafft das Unternehmen selbst unbewusst Blockaden. Ich hoffe, dieser Artikel hilft dabei, erste Schritte zur Verbesserung zu unternehmen.