HÄVG RZ Dev Blog

Hier schreiben die Mitarbeiterinnen und Mitarbeiter aus dem HÄVG Rechenzentrum!

Unser erster Hackathon

Einleitung

Hi, wir berichten Euch hier von unserem ersten Hackathon. Wir, das sind Angelique als Future Work Agent und Tobias als Go-Entwickler.

Auf der Suche nach neuen, innovativen Wegen und Formaten hat sich das Gopher-Team unserer Softwareentwicklung an einen Hackathon gewagt.

Unser Hackathon-Schild (Angepasst an gültige Corona-Verordnung)

Unser Hackathon-Schild (Angepasst an gültige Corona-Verordnung)

Die Bezeichnung “Hackathon” setzt sich zusammen aus “Hacken” und “Marathon” und bedeutet für unsere Entwickler nicht nur einen Tag des intensiven Programmierens ohne Unterbrechungen, sondern auch einen wertvollen Wissensaustausch und viele neue Erkenntnisse durch den entwickelten Prototyp.

Begleitet wurde das Team durch Angelique in ihrer Funktion als Future Work Agent, welche sich insbesondere organisatorisch und methodisch in der Moderation eingebracht hat.

Das Maskottchen der Sprache Go

Das Maskottchen der Sprache Go

Vorbereitungen

Vorbereitend auf den Hackathon hat sich unsere Future Work Agent Angelique zusammen mit Tobias Gedanken über einen möglichen Tagesablauf gemacht. Es sollte eine grobe Agenda geben, ohne die Magie des Hackathons zu sehr zu beeinflussen. Mit “Magie” ist gemeint, dass es möglichst viel Zeit zum Entwickeln und Konzeptionieren geben sollte, ohne dass die Entwickler durch ständige Unterbrechungen wie z.B. Energizer oder Besprechungen aus ihrer Schaffensphase gerissen werden.

Entsprechend wurde eine flexible Agenda zur Orientierung erstellt:

  • 09:00 Begrüßung
  • 09:10 Check-In (Zwei Wahrheiten, eine Lüge)
  • 09:30 Arbeitsphase
  • 11:30 Plenum
  • 12:00 Mittag
  • 13:00 Arbeitsphase
  • 14:30 optionaler kurzer Energizer
  • 14:45 Arbeitsphase
  • 16:00 Plenum
  • 16:30 Checkout

Zusätzlich gab es am Vortag einen Termin mit allen Teilnehmern, um das gemeinsame Verständnis der Aufgaben und die genaue Zielsetzung für den Hackathon zu erarbeiten. Dabei wurden alle Beteiligten noch einmal kurz in die Funktionsweise des Zielproduktes eingeführt. Begleitet wurde dies noch von einem involvierten Architekten Daniel.

Tagesziel des Hackathon war, einen Prototyp zu bauen, der Go und C# .NET 5 kombiniert, um von den jeweiligen Stärken zu profitieren. Go u.a. als Reverse Proxy mit TLS 1.3 Unterstützung und C# .NET 5 für das Hosten von komplexer Business Logik. Dies als ein Cross Plattform-Produkt für Windows, Linux und macOS.

Stattfinden sollte der Hackathon unter Berücksichtigung aller hygienischen Maßnahmen vor Ort in unseren hauseigenen Kreativräumen, welche nicht nur technisch gut ausgestattet sind, sondern auch noch eine lockere und gemütliche Atmosphäre bieten.

Unsere Kreativräume in Köln

Unsere Kreativräume in Köln

Durchführung

Nachdem sich alle Teilnehmer getestet und anschließend in den Kreativräumen unseres Hauses eingefunden hatten, wurde der Hackathon durch unsere Future Work Agentin mit einem auflockernden Opener (zwei Wahrheiten, eine Lüge) eröffnet. Bei diesem Opener erzählt jeder Teilnehmer zwei Wahrheiten und eine Lüge über sich. Die übrigen Teilnehmer versuchen, die Lüge zu entlarven. Dieser Opener dient dazu, sich besser kennenzulernen und das gemeinsame WIR-Gefühl zu stärken. Darüber hinaus erzeugt er eine lockere und lustige Atmosphäre.

Im Anschluss wurden entsprechend der Zielsetzung zwei Arbeitsteams gebildet. Angeführt wurden die Teams von zwei Feature-Paten, die sich bereit erklärt hatten, zwei Aspekte der Lösung von der Konzeption bis zum Rollout zu begleiten.

Pair-Programming

Pair-Programming

Nachdem die letzten Fragen geklärt waren, konnte es endlich losgehen. Es wurde überlegt, diskutiert und entwickelt. Während das Frontend-Team verschiedenen Lösungsansätzen nachging, versuchte sich das Backend-Team zunächst im pair programming.

Der Vormittag war geprägt davon, sich erst einmal mit dem Thema vertraut zu machen. Dies zeigte sich auch im ersten Plenum, in welchem noch nicht viel Sourcecode gezeigt werden konnte, aber schon viel Wissen ausgetauscht wurde. Beide Teams stellten kurz Ihren aktuellen Stand vor und anschließend ging es in die Mittagspause.

Die Verpflegung

Die Verpflegung

Daniel, der Teamleiter, gab sich besonders viel Mühe mit der Verpflegung und sorgte schon am Morgen für eine liebevoll angerichtete Verpflegung. Es gab Mate, Eistee, Knabbereien, Enricos Frikadellen, frisch bestellte Pizza, und wie es sich für den modernen Entwickler gehört, natürlich auch ein wenig gesunde Verpflegung ;)

Enricos Frikadellen

Enricos Frikadellen

Der anschließende Verdauungsspaziergang wurde nur von wenigen Teilnehmern genutzt, da unser Frontend-Team die Zeit lieber nutzte, um die Entwicklung voranzutreiben. Das Tipp-Tempo zog merklich an, und die Motivation, den passenden Lösungsweg zu finden, stieg. Während der Arbeitsphasen ging unsere Future Work Agentin immer mal wieder zu den Teams, um zu schauen, ob eventuell Hilfe benötigt wird. Dabei bot sie eine Zusammenkunft aller Teilnehmer im Plenum an, was aber zumeist nicht notwendig war. In der Regel half bereits ein kurzer Austausch mit Tobias oder Daniel, um weiterzukommen.

Im Endspurt war die die Spannung deutlich zu spüren. Während das Frontend-Team in den letzten Zügen, kurz vor Erreichung des Tagesziels stand, befand sich das Backend-Team bereits seit längerem auf der Suche nach dem berüchtigten letzten Fehler zur Erreichung des Ziels.

Pair-Programming

Pair-Programming

Vorstellung der Ergebnisse

Im Plenum stellten die beiden Teams Ihre Ergebnisse vor und gaben einen Ausblick, wie es mit den entwickelten Prototypen weitergehen soll.

Fazit

Zum Abschluss wurden alle Teilnehmer in einer kleinen Feedbackrunde gebeten mitzuteilen, was ihnen gefallen hat und was nicht, oder was sie sich anders wünschen würden. Alle Entwickler waren sich einig, dass der Hackathon ein tolles Format ist, das unbedingt wiederholt werden sollte. Die Agenda wurde zwar insgesamt sehr dynamisch gehalten, könnte allerdings für einige Teilnehmer noch offener gestaltet werden. Für den nächsten Hackathon planen wir mit 1,5-2 Tagen etwas mehr Zeit.

Zum guten Schluss noch ein paar Zitate der Teilnehmer:

  • “Das Gesamtverständnis für das Produkt ist nun bei allen da.”
  • “Kurze Abstimmungs- und Austauschwege”
  • “Beim nächsten Mal könnten wir ein Kanban-Board gebrauchen”
  • “Ultra fokussiertes Arbeiten. Keine Ablenkung.”
  • “Der Hackathon lohnt sich auf jeden Fall für Neuentwicklungen, vielleicht weniger für bestehende Softwareteile”

Nachtrag

Wir haben inzwischen einen weiteren Hackathon mit Fokus auf zwei andere Features abgehalten und werden das Format auch in Zukunft weiter nutzen.

Glossar

Future Work Agents: unser Unternehmen beschäftigt sich intensiv mit Future Work und New Work. Wir sehen uns als lernende Organisation und haben ein gutes Dutzend Mitarbeiter schulen lassen, damit sie uns bei der Etablierung neuer Formate und Organisationsstrukturen unterstützen.

Das Gopher-Team ist die Klammer um alle Entwickler bei uns, die in Go entwickeln. Gopher ist das Maskottchen der Sprache Go.