35 Punkte von carnoxen 2025-02-13 | 5 Kommentare | Auf WhatsApp teilen

Was ist Freundlichkeit?

Kind is about being invested in other people, figuring out how to help them, meeting them where they are.

Freundlichkeit bedeutet, in andere Menschen zu investieren, herauszufinden, wie man ihnen helfen kann, und ihnen dort zu begegnen, wo sie stehen.

— Tanya Reilly, Continuous

Freundlichkeit bedeutet, wie Tanya Reilly oben sagt, in Menschen zu investieren. Es geht nicht nur darum, nett zu sein, sondern darum, sich in die Lage des Gegenübers zu versetzen und seine Gefühle und Hintergründe zu verstehen. Sie ist nicht in jeder Situation ein Allheilmittel, kann aber dabei helfen, viele Probleme zu lösen.

Zugewandtheit

  • Konzentrieren Sie sich auf Ihre Arbeit, statt nur „professionell“ zu wirken.
  • Verhalten Sie sich offen und menschlich, um Vertrauen aufzubauen.
  • Begegnen Sie Menschen direkt, aber kümmern Sie sich dabei aufmerksam um sie.
  • Kleine Notlügen sind nicht unbedingt schlecht, aber sie helfen Menschen nicht beim Wachsen.
  • Verlieren Sie Ihre Zugewandtheit nicht, loben Sie gutes Verhalten und geben Sie Hinweise, was verbessert werden kann.

Asynchrone (async) Kommunikation

  • Versuchen Sie bei Veränderungen nicht nur das „Was?“ und „Wie?“, sondern auch das „Warum?“ besser zu verstehen.
  • Gehen Sie nicht von Böswilligkeit oder Unfähigkeit aus.
  • Stellen Sie offene Fragen statt starke oder unnötig kontroverse Aussagen zu machen.
  • Bevor Sie auf etwas hinweisen, ist es wichtig, dass es klar gekennzeichnet ist.
  • Zu viele Hinweise können die Arbeit sogar stärker behindern.
  • Wenn es viele Meinungen gibt, wechseln Sie zu einer sequenziellen Form der Kommunikation.

Psychologische Sicherheit

  • Bitten Sie Ihr Team oder Ihre Kolleginnen und Kollegen als Erste um Feedback.
  • Die Struktur von Feedback ist einfach wie folgt:
    • Was gut lief
    • Was nicht gut lief
    • Was später zu tun ist
  • Seien Sie offen für die Hintergründe, die Geschichte und die persönlichen Vorlieben anderer Menschen.
  • Achten Sie auf Menschen, die in Meetings oder Dokumenten keinen großen Beitrag leisten können, und finden Sie Wege, wie sie ihre Stimme einbringen können.
  • Setzen Sie sich dafür ein, dass Menschen sich auf die Weise ausdrücken können, die sich für sie richtig anfühlt.
  • Oft kann ein individuelles Scheitern in Wirklichkeit auf ein Scheitern von Prozessen, Umfeld oder Workflow hinweisen.
  • Wir haben gemeinsam Erfolg, und wir scheitern gemeinsam.
  • Jedes „Scheitern“ oder Ereignis sollte als Gelegenheit zum Wachsen und Lernen gewürdigt werden.
  • Um Innovation zu fördern, müssen wir Menschen ermutigen, Risiken einzugehen, Dinge infrage zu stellen, und ihnen das Gefühl geben, dass dieses Verhalten sicher ist.

Feedback/Kritik

  • Seien Sie von Anfang an nicht die Person, die bewertet, sondern diejenige, die zuerst bewertet wird.
  • Machen Sie es nicht persönlich.
  • Versuchen Sie, bei Feedback oder Lob so konkret und gründlich wie möglich zu sein.
  • Wenn Sie jemandem kritisches Feedback geben, schlagen Sie auch eine Lösung vor.
  • Verstehen Sie Ihre eigenen Präferenzen beim Erhalten von Feedback.
  • Hören Sie zu, verstehen Sie und bedanken Sie sich dann bei der Person, die Ihnen Feedback gegeben hat.
  • Reagieren Sie nicht sofort, sondern nehmen Sie sich Zeit, Ihre Gedanken zu ordnen und das Feedback zu verarbeiten.
  • Bitten Sie um Erläuterungen oder Beispiele.
  • Merken Sie sich die drei Elemente von Feedback:
    • Emotion
    • Glaubwürdigkeit
    • Logik
  • Berücksichtigen Sie die Gefühle der Zuhörenden, nicht nur Ihre eigenen.
  • Zeigen Sie Professionalität und Bescheidenheit.
  • Zeigen Sie, wie Sie arbeiten und wie Sie zu Ihren Schlussfolgerungen kommen.

5 Kommentare

 
arfwene 2025-02-14

Eigentlich selbstverständlich, aber schwer umzusetzen …

 
aster 2025-02-13

Wie kann man auf Grundlage des obigen Materials freundliches Engineering in der Entwicklung anwenden?
Ich habe versucht, mithilfe von AI das sogenannte KDD (Kindness Driven Development) zu formulieren.

Code schreiben

  • Verfassen Sie Kommentare und Dokumentation mit Fokus auf das „Warum?“. Es ist wichtig zu erklären, warum der Code existiert und in welchem Kontext er entstanden ist.
  • Verwenden Sie bei komplexer Logik Variablen- und Funktionsnamen mit Domain-Begriffen, damit andere Entwickler den Code leichter verstehen können.
  • Berücksichtigen Sie bei der Einführung neuer Technologien oder Muster die Lernkurve der Teammitglieder.
  • Kritisieren Sie Legacy-Code nicht. Es gab damals vermutlich Einschränkungen und einen bestimmten Kontext.
  • Dokumentieren Sie für zukünftige Wartungsverantwortliche die Behandlung von Edge Cases und Fehlerfällen.
    Architekturdesign
  • Berücksichtigen Sie beim Systemdesign auch die Perspektive des Operations-Teams und des QA-Teams.
  • Monitoring und Debugging zu erleichtern, ist ebenfalls Teil eines freundlichen Designs.
  • Ein skalierbares Design ist Rücksichtnahme auf zukünftige Teammitglieder.
  • Setzen Sie sich beim Management technischer Schulden nicht die vollständige Beseitigung, sondern ein „beherrschbares Niveau“ zum Ziel.
  • Wichtig ist, eine Struktur zu schaffen, in der sich neue Funktionen leicht hinzufügen lassen.
    Code Review
  • Erklären Sie bei einer Review-Anfrage den Kontext der Änderungen ausreichend.
  • Verwenden Sie vorschlagende Formulierungen wie „Wie wäre es damit?“.
  • Erwähnen Sie unbedingt auch positive Aspekte. „Dieser Teil ist wirklich sauber umgesetzt.“
  • Wenn Sie Alternativen vorschlagen, erläutern Sie auch die Gründe dafür.
  • Erfassen Sie nicht dringende Verbesserungen separat als Issue und respektieren Sie so den Umfang des aktuellen PR.
    Testcode
  • Geben Sie bei fehlschlagenden Tests klare Fehlermeldungen aus.
  • Testfälle dienen auch der Dokumentation. Schreiben Sie Tests, die die Geschäftsregeln gut erklären.
  • Schaffen Sie eine Struktur, in der andere Entwickler leicht Tests ergänzen können.
  • Verwenden Sie für Testdaten leicht verständliche reale Beispiele.
  • Automatisieren Sie die Einrichtung der Testumgebung, um die Einstiegshürde zu senken.
    Deployment und Betrieb
  • Nehmen Sie in Deployment-Skripte ausreichend Erklärungen und Anleitungen auf.
  • Bereiten Sie im Voraus Logs vor, die im Störungsfall beim Debugging helfen.
  • Wenn Konfigurationsänderungen nötig sind, dokumentieren Sie die Auswirkungen.
  • Bereiten Sie bei der Einführung neuer Funktionen auch einen Rollback-Plan vor.
  • Schreiben Sie Betriebsleitfäden aus der Perspektive neuer Entwickler.
    Wissensaustausch
  • Dokumentieren und teilen Sie Troubleshooting-Erfahrungen.
  • Erstellen und teilen Sie bei der Einführung neuer Technologien Lernmaterialien.
  • Nehmen Sie in Coding-Guides auch auf, „warum man sich dafür entschieden hat“.
  • Fördern Sie das Wachstum des Teams durch regelmäßige Zeiten für den technischen Austausch.
  • Eine Umgebung zu schaffen, in der man leicht Fragen stellen kann, unterstützt das Wachstum von Junior-Entwicklern.
 
bbulbum 2025-02-17

Das ist ein Inhalt, der sogar gut als eigener Text funktionieren würde, haha.

 
laeyoung 2025-02-16

Wirklich großartig!

 
aer0700 2025-02-14

Das ist ein wirklich großartiger Kommentar.