Gemeinsam einsam

Remote Pair Programming: Zusammen arbeitet es sich weniger allein

Elaine Barry

© Shutterstock / NPortugal

Zwei Entwickler arbeiten nebeneinander gemeinsam am selben Problem, mit dem Ziel effektiveren, sichereren und hochwertigeren Code zu erzeugen. Dieses Vorgehen – genannt Pair Programming – ist die Erfolgsgeschichte in Sachen Software-Entwicklung. Immer mehr große Unternehmen adaptierten in den letzten Jahren dieses Vorgehen in ihren Entwicklungsabteilungen. Doch dann kam plötzlich Corona und alle Welt arbeitet auf einmal von zu Hause. Kann ein Konzept, das so stark auf das Miteinander angelegt ist, auch von Home Office zu Home Office funktionieren? Es kann! Elaine Barry, Director VMware Pivotal Labs Berlin, gibt Tipps, wie Pair Programming auch remote erfolgreich funktioniert.

Software-Entwicklung ist in den allermeisten Fällen ein iterativer Prozess: Der oder die Developer entwickelt – zumeist allein – verschiedene Einzelfunktionen, worauf hin dann andere Entwickler sich den Code anschauen und gegebenenfalls Änderungsvorschläge einbringen. Diese landen wieder beim ursprünglichen Developer, der sie entweder einarbeitet oder verwirft. Die Herausforderung, gute und vor allem sichere Software in immer kürzerer Zeit abzuliefern, hat jedoch viele Organisationen über die letzten Jahre hinweg dazu bewegt, zu einer neuen Art der Software-Entwicklung zu wechseln: dem Pair Programming. Diese Art des miteinander Programmierens führt die oben beschriebenen Prozesse mit dem Ziel zusammen, effektiveren, sichereren und hochwertigeren Code zu erzeugen.

Beim Pair Programming sitzen dabei zwei Entwickler vor jeweils einem Bildschirm und ein und demselben Rechner und arbeiten gemeinsam an derselben Aufgabe. Dabei programmieren sie nicht nur gleichzeitig, sondern – und eben das ist die Besonderheit – zusammen. Während des gemeinsamen Programmierens an derselben Aufgabe wird miteinander gesprochen, diskutiert, Feedback gegeben, Kritik angenommen oder verworfen und so laufend neue Optionen erwogen. Pair Programming ist daher bereits in „normalen Zeiten“ sehr Kommunikations-intensiv. Wie kann dieser Prozess also vonstatten gehen, wenn jeder von zu Hause aus vor seinem PC sitzt und arbeitet?

Kommunizieren, kommunizieren, kommunizieren

Beim Remote Pairing muss eine Online-Arbeitsumgebung neu aufgebaut werden, in der das Team weiterhin zusammenarbeiten und die Produktionsdynamik aufrechterhalten kann. Diese Umgebung stellt vor allem neue Hürden für die direkte Kommunikation zwischen den Partnern da. Daher muss das Augenmerk mehr denn je auf eine effiziente Kommunikation mit Feedback und zwischenmenschlichem Respekt gelegt werden. Eine grundlegende Regel, um dies zu ermöglichen: Nutzen Sie Videos. Ein Großteil der Kommunikation ist nonverbal und zu sehen, ob Ihr Partner glücklich, aufgeregt, traurig oder frustriert ist, kann die Kommunikation erheblich verbessern. Halten Sie Audio und Video ständig offen, damit Ihr Partner sehen kann, was am anderen Ende geschieht.

Das richtige Set-up

Damit Video- und Audioübertragung reibungslos funktionieren und somit eine optimale Kommunikationssituation entsteht, sind einige Tipps und Richtlinien zu beachten. Los geht es beim Set-up. Damit sich die Partner akustisch einwandfrei verstehen, sollten geeignete Audiogeräte genutzt werden. Achten Sie dabei auf Hintergrundgeräusche, die von Ihrer Umgebung zuhause ausgehen könnten. Während Ohrstöpsel zwar in vielen Fällen ausreichen, kann ein geeignetes Headset mit einem Mikrofon besseren Komfort bieten und bei etwaigen Hintergrundgeräuschen sogar dringend erforderlich sein.

Da Sie beim Pair Programming gleichzeitig am Code arbeiten und mit dem Partner kommunizieren, bietet sich außerdem eine Zwei-Monitor-Konfiguration an: Ein Monitor für die gemeinsame Bildschirmnutzung und einer für die Videoübertragung. Erwägen Sie, Ihre Kamera auf demselben Bildschirm zu platzieren, auf dem sich das Video Ihres Partners befindet, damit Sie Blickkontakt herstellen können, wenn Sie miteinander sprechen.

Hilfreiche Software-Tools

Für die digitale Zusammenarbeit steht mittlerweile eine große Vielfalt an Tools bereit. Auch für die Besonderheiten des Remote Pair Programmings lassen sich einige – mit der richtigen Herangehensweise – sinnvoll nutzen.

Zoom – Die meistgenutzte Video-Plattform ist ebenfalls fürs Pair Programming gut geeignet. Allerdings können auch hier kleinere Herausforderungen warten – zum Beispiel bei der Bildschirmfreigabe. Während Zoom eine gemeinsame Bildschirmnutzung ermöglicht, kann die Verzögerung mit Latenz beim Programmieren das Pairing erschweren. Ein großer Vorteil sind hingegen die Breakout-Räume: Sie ermöglichen es, ein Zoom-Meeting in bis zu 50 separate Sitzungen aufzuteilen. Break-out-Räume können bei der Arbeit in Teams und bei der Aufteilung in Paare hilfreich sein, aber die Einrichtung und Konfiguration der Break-out-Räume erfordert zunächst eine gewisse Zeit. Es empfiehlt sich, separate Zoom-Calls pro Team (PM, Design, Engineering) sowie einen Zoom-Call für Standard-Sitzungen (Stand up, IPM, Retro usw.) zu verwenden. Diese Räume können dann in den Projekt-Slack-Kanal eingefügt werden, damit jeder weiß, wo er die virtuellen Räume findet. Browser-Lesezeichen können auch zum einfachen „Springen“ zwischen verschiedenen Zoom-Meetings verwendet werden.

Slack – Der Instant-Messaging-Dienst Slack ist nicht nur benutzerfreundlich, einfach einzurichten und für eine Vielzahl von Geräten und Betriebssystemen verfügbar – für Entwickler ergeben sich auch interessante Möglichkeiten, das Tool mit anderen Apps zu verbinden: zum Beispiel mit der GitHub-App. Durch diese Verbindung können Developer Link-Vorschauen für öffentliche Repositories in Slack erhalten und Benachrichtigungen von GitHub mit Slack-Befehlen einrichten. So bleiben sie einfacher über die Projektentwicklung auf dem Laufenden.

Miro – Das virtuelle Whiteboard-Tool Miro kann unter anderem für die Synthese von Forschungsergebnissen, die Festlegung von Teamprioritäten, ergebnisorientierte Roadmaps oder Teamziele genutzt werden. Beim Pair Programming eignet es sich vor allem für die Moderation im Team. Erwägen Sie, zuerst eine „Intro to Miro“-Übung durchzuführen, wenn die Teilnehmer mit Miro nicht vertraut sind. Bei der Erstellung von Elementen auf einer Miro-Tafel ist es nützlich, Navigationshinweise bereitzustellen – zoomen Sie heraus und erstellen Sie große farbige Kästen, damit sich Teilnehmer besser in dem riesigen allgemeinen Whiteboard-Raum zurecht finden.

Tuple – Die Hersteller von Tuple bezeichnen ihre App selbstbewusst als „best remote pair programming app on macOS“. Und tatsächlich hält das Tool einige Vorteile für Entwickler bereit: Mit Tuple können Sie Ihren gesamten Bildschirm freigeben sowie die Tastatur und Cursor des Partners mit nur einem einzigen Mausklick problemlos übernehmen. Die Video-Übertragung ist nahezu reibungslos und bietet die Möglichkeit, die Streaming-Qualität zu ändern (ab 720p). Außerdem zeigt das Tool detaillierte Informationen über die Verbindung an, um festzustellen, wo Latenzzeiten auftreten können. Nicht empfehlenswert ist Tuple allerdings für designbezogene Arbeiten, wie die Anwendung von CSS. Außerdem sollten Sie beachten, dass das Tool keine Spracheingabemethoden für nicht-englische Sprachen auf dem entfernten Rechner unterstützt.

Remote Pair Programming muss auch achtsam sein

Im Mittelpunkt des Remote Pair Programmings steht der Gedanke, effektiv zu kommunizieren und dabei den Programmierwerten treu zu bleiben. Die vorgestellten Tipps und Tools können enorm helfen, diesen Gedanken auch in die Tat umzusetzen. Bei all dem darf aber nicht vergessen werden, dass die ohnehin belastende Ausnahmesituation des Dauer-Home-Office die seelische Verfassung der Partner und somit die zwischenmenschliche Zusammenarbeit weiterhin erschweren kann. Um auch diesen Aspekt nicht aus den Augen zu verlieren, folgt zum Abschluss eine kurze Checkliste mit Fragen, die sich Remote Pairing-Partner immer wieder stellen sollten.

Checkliste für achtsames Remote Pairing:

  • Fühlen Sie sich engagiert? Fühlen Sie sich einbezogen? Beschäftigt sich Ihr Partner aktiv mit Ihnen? Beziehen Sie Ihren Partner in die Aufgabe, an der Sie arbeiten, mit ein? Sind Sie beide mit der Richtung, die Sie einschlagen, einverstanden?
  • Entspricht die Auflösung/Qualität von Audio, Video und Screensharing Ihren Erwartungen? Sollten Sie mit verschiedenen Geräten oder Software experimentieren?
  • Machen Sie angemessene Pausen? Eine ferngesteuerte Zusammenarbeit kann anstrengender sein als eine persönliche Zusammenarbeit. Möglicherweise benötigen Sie häufigere oder längere Pausen als üblich.

Verwandte Themen:

Geschrieben von
Elaine Barry

Elaine Barry leitet den VMware Pivotal Labs Standort in Berlin. Zuvor war sie als Senior Product Manager bei der Dawanda GmbH sowie als Employee Communications Consultant (Europe) bei eBay tätig.

Kommentare

Hinterlasse einen Kommentar

avatar
4000
  Subscribe  
Benachrichtige mich zu: