
Hallo zusammen! Mein Name ist Lyudmila Makarova, ich bin Entwicklungsmanagerin bei UBRiR und ein Drittel meines Teams sind "Alleskönner".
Geben Sie es zu: Jeder Tech Lead trĂ€umt von der cross-funktionalen Zusammenarbeit innerhalb seines Teams. Es ist groĂartig, wenn eine Person drei ersetzen kann und das auch noch qualitativ hochwertig, ohne die Fristen zu verschieben. Und nicht zu vergessen, es spart Ressourcen!
Das klingt sehr verlockend, aber ist es wirklich so? Lassen Sie uns das klÀren.
Wer ist unser Vorreiter der Erwartungen?
Unter dem Begriff "Alleskönner" versteht man normalerweise Teammitglieder, die mehr als eine Rolle kombinieren, zum Beispiel Entwickler-Analytiker.
Die Interaktion im Team und das Ergebnis ihrer Arbeit hÀngen von den beruflichen und persönlichen Eigenschaften der Teilnehmer ab.
Bei den Hard Skills ist alles klar, aber die Soft Skills verdienen besondere Beachtung. Sie helfen, den Zugang zum Mitarbeiter zu finden und ihn genau auf die Aufgabe zu lenken, bei der er maximal nĂŒtzlich sein kann.
Es gibt viele Artikel ĂŒber verschiedene Persönlichkeitstypen in der IT-Branche. Basierend auf meinen Erfahrungen wĂŒrde ich IT-Alleskönner in vier Kategorien einteilen:
1. "Alleskönner â AllmĂ€chtig"
Solche gibt es ĂŒberall. Sie zeigen immer viel AktivitĂ€t, wollen im Mittelpunkt stehen, fragen stĂ€ndig bei Kollegen nach, ob sie helfen können, und können manchmal sogar nerven. Ihr Interesse gilt nur bedeutenden Aufgaben, die Raum fĂŒr KreativitĂ€t bieten und ihr Ego erfreuen.
Dabei sind sie stark in:
- der Lage, komplexe Aufgaben zu lösen;
- tauchen tief in Probleme ein, "graben" und erzielen Ergebnisse;
- verfĂŒgen ĂŒber einen neugierigen Verstand.
Aber:
- sind emotional labil;
- kaum steuerbar;
- haben ihre unbeirrbare Meinung, die sehr schwer zu Àndern ist;
- schwierig zu motivieren, einfache Aufgaben zu erledigen. Einfache Aufgaben kratzen am Ego der AllmÀchtigen.
2. "Alleskönner â Ich werde es herausfinden und machen"
Solchen Leuten genĂŒgt ein Handbuch und ein wenig Zeit â und sie lösen das Problem. Normalerweise haben sie einen umfangreichen Hintergrund als DevOps. Diese Alleskönner scheuen sich nicht, zu planen, und ziehen es vor, die Entwicklungsmethode ausschlieĂlich auf der Grundlage ihrer eigenen Erfahrung zu nutzen. Sie können problemlos mit dem Tech Lead ĂŒber die gewĂ€hlte Umsetzung der Aufgabe streiten.
Dabei sind sie stark in:
- unabhÀngig;
- stressresistent;
- kompetent in vielen Fragen;
- Wissensreich â mit ihnen gibt es immer etwas zu besprechen.
Aber:
- hÀufig Verpflichtungen verletzen;
- neigen dazu, alles zu komplizieren: lösen das Einmaleins durch partielle Integration;
- die QualitÀt der Arbeit ist niedrig, alles wird erst beim zweiten oder dritten Versuch erreicht;
- verschieben stÀndig die Fristen, weil sich herausstellt, dass es in Wirklichkeit nicht so einfach ist.
3. âUniversal â na gut, lassen Sie es mich machen, da es sonst niemand gibtâ
Der Mitarbeiter hat in mehreren Bereichen ein gutes VerstĂ€ndnis und entsprechende Erfahrung. Er kann jedoch in keinem von ihnen ein Profi werden, da er oft als Rettungsring eingesetzt wird, um aktuelle Aufgaben zu erledigen. Flexibel, fĂŒgsam, fĂŒhlt sich gefragt, ist es aber tatsĂ€chlich nicht.
Praktisch der ideale Mitarbeiter. Höchstwahrscheinlich hat er einen Bereich, der ihm mehr zusagt, aber durch die UnschÀrfe der Kompetenzen findet keine Entwicklung statt. Infolgedessen riskiert die Person, ungenutzt und emotional ausgebrannt zu werden.
Dabei sind sie stark in:
- verantwortlich;
- ergebnisorientiert;
- ruhig;
- vollstÀndig kontrollierbar.
Aber:
- zeigen durchschnittliche Ergebnisse wegen niedrigem Kompetenzniveau;
- können komplexe und abstrakte Aufgaben nicht lösen.
4. âUniversal â Meister seines Fachsâ
Eine Person mit einem soliden Hintergrund als Entwickler, hat systemisches Denken. Ist pedantisch, stellt hohe Anforderungen an sich selbst und das Team. Jede Aufgabe mit seiner Beteiligung kann sich endlos ausdehnen, wenn die Grenzen nicht definiert werden.
Gut mit der Architektur vertraut, wÀhlt die Methode der technischen Umsetzung und analysiert sorgfÀltig den Einfluss der gewÀhlten Lösung auf die aktuelle Architektur. Bescheiden, wenig ehrgeizig.
Dabei sind sie stark in:
- zeigen hohe ArbeitsqualitÀt;
- sind in der Lage, jede Aufgabe zu lösen;
- sehr arbeitsam.
Aber:
- intolerant gegenĂŒber der Meinung anderer;
- Maximalisten. Sie versuchen, alles richtig zu machen, was die Entwicklungszeit verlÀngert.
Was haben wir in der Praxis?
Schauen wir uns an, wie hĂ€ufig Rollen und Kompetenzen kombiniert werden. Nehmen wir als Ausgangspunkt ein standardmĂ€Ăiges Entwicklungsteam: PO, Entwicklungsleiter (Techlead), Analysten, Programmierer, Tester. Den ProdukteigentĂŒmer und den Techlead lassen wir auĂen vor. Den ersteren wegen des Fehlens technischer Kompetenzen, den zweiten muss man, falls im Team Probleme auftreten, gerade in der Lage sein, alles zu machen.
Die hĂ€ufigste Variante der Zusammenlegung/Vereinigung/Kombination von Kompetenzen ist der Entwickler-Analytiker. Auch der Analytiker-Tester und âdrei in einemâ kommen sehr hĂ€ufig vor.
Anhand meines Teams werde ich die Vor- und Nachteile von Universalkollegen aufzeigen. Ein Drittel meines Teams besteht aus ihnen, und ich schÀtze sie sehr.
Von der PO kam eine dringende Aufgabe zur EinfĂŒhrung neuer Tarife in das bestehende Produkt. In meinem Team sind 4 Analysten. Zu diesem Zeitpunkt war einer im Urlaub, ein anderer krank, und die restlichen arbeiteten an der Umsetzung strategischer Aufgaben. Wenn ich sie herausgezogen hĂ€tte, hĂ€tte das unweigerlich die Umsetzungstermine gefĂ€hrdet. Es blieb nur der einen Ausweg: das âgeheime Waffenâ â den Universalkenner-Analytiker-Entwickler zu nutzen, der die erforderlichen Fachkenntnisse hatte. Nennen wir ihn Anatoli.
Sein Persönlichkeitstyp ist âUniversalkenner â ich werde es herausfinden und umsetzenâ. NatĂŒrlich hat er lange versucht zu erklĂ€ren, dass er âeinen vollstĂ€ndigen Backlog seiner Aufgabenâ hat, aber aufgrund meiner entschlossenen Entscheidung wurde er zur Lösung der dringenden Aufgabe geschickt. Und Anatoli hat es geschafft! Er hat die Anforderung formuliert und die Umsetzung rechtzeitig erledigt, und die Auftraggeber waren zufrieden.
Auf den ersten Blick war alles gelungen. Aber nach einigen Wochen gab es erneut Anforderungen zur Nachbearbeitung dieses Produkts. FĂŒr diese Aufgabe war nun ein âreinerâ Analyst zustĂ€ndig. In der Testphase der neuen Entwicklung konnten wir lange nicht verstehen, warum Fehler bei der Zuordnung der neuen Tarife auftraten, und erst spĂ€ter, als wir das ganze KnĂ€uel entwirrten, gelangten wir zur Wahrheit. Wir haben eine Menge Zeit verloren und die Fristen ĂŒberschritten.
Das Problem lag darin, dass viele versteckte Aspekte und Fallstricke nur im Kopf unseres Universalkenner geblieben waren und nicht auf Papier festgehalten wurden. Wie Anatoli spÀter erklÀrte, hatte er sich zu sehr beeilt. Aber am wahrscheinlichsten ist, dass er bereits bei der Entwicklung auf Probleme stieà und diese einfach umging, ohne sie irgendwo festzuhalten.
Es gab auch eine andere Situation. Jetzt haben wir nur einen Tester, daher mĂŒssen einige Aufgaben von den Analysten, einschlieĂlich â Universalkennern, getestet werden. Deshalb habe ich eine Aufgabe einem hypothetischen Fjodor gegeben â âUniversalkenner â in Ordnung, ich mache es, da sonst niemand da istâ.
Fjodor ist âdrei in einemâ, aber fĂŒr diese Aufgabe war bereits ein Entwickler zugewiesen. Das bedeutet, dass Fjodor nur Analyst und Tester in einer Person vereinen musste.
Die Anforderungen wurden gesammelt, die Spezifikation an die Entwicklung ĂŒbergeben, es ist Zeit zu testen. Fjodor kennt das ĂŒberarbeitete System «wie seine fĂŒnf Finger» und hat die aktuellen Anforderungen akribisch bearbeitet. Daher hat er sich nicht die MĂŒhe gemacht, Test-Szenarien zu schreiben, sondern hat getestet, «wie das System funktionieren sollte», und danach â an die Benutzer ĂŒbergeben.
Der Test wurde abgeschlossen, die Ăberarbeitung ging an die Produktion. SpĂ€ter stellte sich heraus, dass das System nicht nur die DurchfĂŒhrung von Zahlungen auf bestimmten Kontoguthaben pausiert, sondern auch die DurchfĂŒhrung von Zahlungen von sehr seltenen internen Konten blockiert, die dabei nicht beteiligt sein sollten.
Das geschah, weil Fjodor nicht ĂŒberprĂŒft hat, wie «das System nicht funktionieren sollte», keinen Testplan und keine Checklisten erstellt hat. Er entschloss sich, Zeit zu sparen und vertraute auf sein eigenes GespĂŒr.
Wie gehen wir mit Problemen um?
Ăhnliche Situationen wirken sich auf die Effizienz der Teamarbeit, die QualitĂ€t der veröffentlichten Releases und die Zufriedenheit der Auftraggeber aus. Daher dĂŒrfen sie nicht unbeachtet bleiben und sollten analysiert werden.
1. FĂŒr jede Aufgabe, die Schwierigkeiten bereitet hat, bitte ich um das AusfĂŒllen eines einheitlichen Formulars: eines Fehlerberichts, der es ermöglicht, die Phase zu identifizieren, in der es zu einem «RĂŒckgang» kam:

2. Nachdem die EngpĂ€sse identifiziert sind, findet mit jedem Mitarbeiter, der das Problem beeinflusst hat, ein Brainstorming statt: «Was mĂŒssen wir Ă€ndern?» (EinzelfĂ€lle betrachten wir nicht retrospektiv), aus dem konkrete MaĂnahmen hervorgehen (fĂŒr jeden Typ Persönlichkeit eigene) mit Terminen.
3. Wir haben Regeln fĂŒr die Interaktion innerhalb des Teams eingefĂŒhrt. Zum Beispiel haben wir vereinbart, alle Informationen ĂŒber den Fortschritt der Aufgaben im Projektmanagementsystem festzuhalten. Bei Ănderungen oder der Entdeckung von Artefakten im Entwicklungsprozess muss dies in der Wissensdatenbank und in der endgĂŒltigen Version der Spezifikation angezeigt werden.
4. Die Kontrolle fand in jeder Phase statt (besonderes Augenmerk wird auf problematische Phasen in der Vergangenheit gelegt) und automatisch auf Grundlage der Ergebnisse der nÀchsten Aufgabe.
5. Wenn sich das Ergebnis der nÀchsten Aufgabe nicht geÀndert hat, setze ich das betrachtete Universalgenie nicht in die Rolle, aus der er schlecht abschneidet. Ich versuche, seine FÀhigkeit und seinen Wunsch zur Weiterentwicklung der Kompetenzen in dieser Rolle zu beurteilen. Wenn ich keine Resonanz finde, lasse ich ihn in der Rolle, die ihm nÀher ist.
Was ist letztendlich herausgekommen?
Der Entwicklungsprozess ist transparenter geworden. Der BUS-Faktor hat sich verringert. Teammitglieder, die an Fehlern arbeiten, sind motivierter und verbessern ihr Karma. Wir erhöhen allmÀhlich die QualitÀt unserer Releases.

Das DBMS Tarantool ist ein attraktives, zukunftstrÀchtiges Produkt zur Erstellung von hochbelasteten Anwendungen.
Mitarbeiter mit vielseitigen FĂ€higkeiten haben ihre Vor- und Nachteile.
Vorteile:
- Es ist möglich, eine hĂ€ngende Aufgabe jederzeit zu schlieĂen oder einen dringenden Bug in kurzer Zeit zu beheben;
- ein ganzheitlicher Ansatz bei der Lösung von Aufgaben: der AusfĂŒhrende betrachtet sie aus der Perspektive aller Rollen;
- Universalisten können nahezu alles gleichermaĂen gut erledigen.
Nachteile:
- Der BUS-Faktor wÀchst;
- die grundlegenden Kompetenzen, die spezifisch fĂŒr eine Rolle sind, verschwimmen. Dadurch sinkt die ArbeitsqualitĂ€t;
- Die Wahrscheinlichkeit von Terminverschiebungen steigt, da es keine Kontrolle ĂŒber jeden Schritt gibt. Es bestehen auch Risiken fĂŒr die Entstehung einer "Sternsituation": Der Mitarbeiter ist ĂŒberzeugt, dass er besser weiĂ, dass er ein Profi ist;
- Das Risiko des beruflichen Burnouts steigt;
- Eine Menge wichtiger Informationen ĂŒber das Projekt kann nur im "Kopf" des Mitarbeiters bleiben.
Wie Sie sehen, ĂŒberwiegen die Nachteile. Daher setze ich Universalisten nur ein, wenn die Ressourcen knapp sind und die Aufgabe dringend ist. Oder wenn die Person FĂ€higkeiten hat, die bei anderen fehlen und bei denen es um QualitĂ€t geht.
Wenn bei der gemeinsamen Arbeit an einer Aufgabe die Regel der Rollenzuweisung eingehalten wird, steigt die ArbeitsqualitĂ€t. Wir betrachten die Probleme aus verschiedenen Blickwinkeln, der Blick wird nicht einseitig, es kommen immer neue Gedanken hinzu. Gleichzeitig hat jedes Teammitglied alle Möglichkeiten fĂŒr professionelles Wachstum und Erweiterung seiner Kompetenzen.
Ich glaube, dass das Wichtigste ist, seine Zugehörigkeit zum Prozess zu spĂŒren, seine Arbeit zu tun und allmĂ€hlich die Breite seiner Kompetenzen zu erhöhen. Dennoch bringen Universalisten im Team Vorteile: Es ist entscheidend, dass sie unterschiedliche Rollen effektiv kombinieren.
Ich wĂŒnsche allen selbstorganisierenden Teams von "Universalisten, die Meister ihres Fachs sind"!
Quelle: habr.com
