🫱🏼‍🫲🏾 Capchase Communities Blueprint | von Ezequiel Cura | Capchase-Technologie | Juni 2023

Capchase-Technologie

🫱🏼‍🫲🏾 Community-Strukturen innerhalb von Tech ergänzen unsere Squads und Pods.
Ihnen wird die große Verantwortung übertragen, Standards und Systeme zu definieren und umzusetzen, um in den kommenden Jahren Ergebnisse zu liefern.
Heutzutage haben wir Communities für Datenanalyse, Datenwissenschaft, Datentechnik, Software-Infrastruktur und -Qualität sowie Full-Stack.

Als ich zu Capchase kam, hatten wir drei Teams: Front-End, Back-End und Daten. Jedes Team konzentrierte sich auf einen klar definierten, stabilen Technologie-Stack und Fachwissen. Daten waren die Welt von Python und BigQuery, das Front-End definierte unsere NodeJS- und ReactJS-Architektur und das Backend hatte die Verantwortung, mithilfe von Go, Rust und Elixir eine Brücke zwischen diesen Welten zu schlagen. Obwohl wir damals weniger als 15 Leute waren, hatten wir mehr als 10 Repos, mehr als sieben Codierungssprachen und mehr als fünf Dienste am Laufen. Wir fanden drei wesentliche limitierende Faktoren, die den gesamten Ansatz in Frage stellten:

  • Silos
    Jedes Team hatte einen Teamleiter, der sowohl Personalmanager als auch technischer Leiter war. Durch stark gekoppelte Berichtslinien wurde die Verantwortung für Technologie und Lösungen bei einem einzigen Team und einer einzigen Person zentralisiert. Daher schien es fehl am Platz zu sein, Rat einzuholen oder Menschen die Zusammenarbeit außerhalb ihrer Teams zu ermöglichen. Der Wissenstransfer innerhalb der Organisation war gleich Null.
  • Quälende Koordination
    Für jedes Projekt, jede Funktion oder jedes neue Produkt mussten sich diese Teams untereinander abstimmen. Obwohl wir ein kleines Team waren, verbrachten wir daher die meiste Zeit damit, die Bemühungen dieser Teams zu koordinieren. Die größte Herausforderung bestand darin, zu entscheiden, wann ein Team die „fehlende Teilfunktion“ implementieren würde, damit ein anderes Team sie liefern konnte. Aufgrund des mangelnden Kontexts in den ersten Annahmen mussten wir in den meisten Fällen Wochen nach Projektbeginn wieder ans Reißbrett gehen.
  • Zukunftssichere Lösungen
    Da jedes Team nur begrenzte Vorstellungen von den Bedürfnissen und Plänen von Capchase hatte, war es ihnen unmöglich, Lösungen bereitzustellen, die unser Geschäft auf lange Sicht tatsächlich erfüllen würden. Sie alle hatten eine teilweise Ansicht, die nur auf ihrem Rückstand beruhte. Das führte dazu, dass einige Teams hohe technische Schulden auf sich nahmen und andere monatelang Lösungen überentwickelten.

Um diese Einschränkungen zu lösen, haben wir uns gefragt: Was ist die richtige Balance zwischen schneller Lieferung und robusten innovativen Lösungen?

Die Antwort auf diese nicht so originelle Frage hat uns dazu bewogen, bei Capchase das Squad- und Community-Konzept zu entwickeln. Heute konzentrieren wir uns auf Letzteres.

Lesen Sie auch  Das Samsung Gaming Hub-Portfolio wird mit der Einführung von Antstream Arcade und Blacknut auf fast 3.000 Spiele erweitert – Samsung Global Newsroom

Was sind Communities bei Capchase?

Wie Andrew Grove in „High-Output-Management, Gemeinden“ andeuten würde [functional teams] Sind dazu da, die Hebelwirkung von Capchase gegenüber unseren Trupps zu erhöhen? [mission teams] sind für die schnelle Umsetzung kurzfristiger Initiativen da.

Eine Community ist ein nicht hierarchisches Team, es gibt keine Manager, nur Experten und Leads. Es ist eine zusätzliche Verantwortung für alle Mitglieder unserer Mannschaften, die wöchentlich einen aktiven Beitrag leisten müssen. Es ist der maximale Ausdruck unserer Builder-Haltung und unserer dienenden Führung.

Unser Community-Ansatz basiert auf zwei Eckpfeilern unserer Tech-Kultur:

  1. Wir verlieben uns in Herausforderungen, nicht in Lösungen.
    Eine Community konzentriert sich auf eine einzige technische Hauptherausforderung in unserem System, z. B. unsere Datenpipelines, unsere Datenanalysesysteme, Zahlungsinfrastruktur, CI/CD, Kunden-Anbieter-Integrationen usw. Das bedeutet, dass ihr Fachwissen auf der Herausforderung basiert und diese sich ändern kann in der Zukunft. Wir hatten Communities, die von Go zu Elixir wechselten, von Elixir zu NodeJS, von BigQuery abwanderten oder vielleicht damit begannen, es zu verwenden. Die Herausforderung blieb jedoch immer bestehen, da sie für Capchase von zentraler Bedeutung ist.
  2. ‘Ich bin, weil wir sind’
    Intellektuelle Bescheidenheit und die Einstellung „Wir zuerst, nicht ich zuerst“ sind der Kern der Capchase Tech-Kultur. Communities sind Teams von Technologieteams, Einzelpersonen, die ihre einzigartigen Perspektiven aus verschiedenen Geschäftsanliegen einbringen und diese alle teilen, um ein besseres Capchase aufzubauen. Manchmal dauern die Änderungen Wochen, Monate oder Quartale, aber das sind normalerweise die bedeutendsten. Wir sind hier, um es uns allen zu ermöglichen, heute, morgen und immer innovativ zu sein.

Wie funktionieren Communities bei Capchase?

Jede Organisation, die ein System (im weitesten Sinne) entwirft, erstellt einen Entwurf, dessen Struktur eine Kopie der Kommunikationsstruktur der Organisation ist.[2][3]

— Melvin E. Conway

Aufgrund des herausforderungsorientierten Ansatzes entstehen Gemeinschaften dann, wenn es eine gibt fast universeller Technologiebedarf, der keinen begrenzten Zeithorizont haben sollte; und wird oft durch organische Diskussionen zwischen technischen Leitern, Community-Leitern und Managern entdeckt.

Sobald ein Bedarf erkannt wird, streben wir danach, uns einer ersten Vision des „Systemdenkens“ zuzuwenden und uns von einem auf „Teamlieferung“ ausgerichteten Ansatz zu entfernen. Manchmal führt dies zu einem Interessenkonflikt zwischen Communities und Squads. Die Pläne der Community können den kurzfristigen Interessen eines einzelnen Teams zuwiderlaufen. Daher ist es wichtig, die richtigen ersten Community-Mitglieder zu finden, die in der Lage sind, diese Kompromisse sorgfältig abzuwägen und bei Bedarf zu eskalieren.

Lesen Sie auch  Ihr Aquarium auf Autopilot 🐟 von StayrAI :: Kicktraq

Aus diesen ersten Mitgliedern geht in der Regel eines hervor, das die Leitung der Community übernimmt. Dieser dienende Anführer, der möglicherweise rotiert, ist der Vertreter dieser Community und er ist dafür verantwortlich, sicherzustellen, dass seine Community ihren Verpflichtungen, einschließlich OKRs, nachkommt.

Schließlich gilt die Teilnahme an einer Gemeinschaft als a Privileg, es ist keine Verpflichtung. Während die Community-Newsletter und Support-Kanäle allen Tech-Mitarbeitern offen stehen, sind Community-Meetings nur für einzelne Mitwirkende gedacht, die ihre Wirkung über ihre direkten Teams hinaus aktiv fördern möchten. Es ist eine zusätzliche Verantwortung für die Mannschaft und erfordert den gleichen Einsatz. Es zeigt ein tiefes Engagement für unsere Tech & Capchase-Vision.

Erwartete Ergebnisse

Der wichtigste Teil einer Gemeinschaft ist ihr erwartetes Ergebnis. Eine Gemeinschaft existiert mit einem Ziel, und eine Gemeinschaft, die keine Vision hat – d. h. ein gut ausgearbeitetes erwartetes Ergebnis – oder es nicht einhält, muss demontiert werden. Es ist diese Methodik, die uns hilft, auf organisierte Weise zu skalieren und zu eskalieren.

Also definieren wir a Gemeinschaft bei Capchase durch klare Angabe erwartete Ergebnisse, Aktivitäten und Verhaltensweisen der Mitglieder die die Gruppe regeln.

Wir haben die erwarteten Ergebnisse einer Community unterteilt in:

  • Klare Roadmap für mehr als 6 Monate für einen großen Technologiebereich
    Communities besitzen ihre OKRs, KPIs und langfristigen Initiativen in bestimmten Technologiebereichen. Sie konzentrieren ihre Energie darauf, unsere Systeme kontinuierlich zu verbessern, damit wir schneller und mit besserer Qualität vorankommen und gleichzeitig vollständig auf die technische Gesamtvision ausgerichtet sind. Sie konzentrieren sich oft auf langfristige Ergebnisse.
  • Koordination zur Definition und Implementierung von Standards für Capchase
    Von den Gemeinschaften wird erwartet, dass sie Standards definieren und diese auch umsetzen. Um dies zu erreichen, sollte eine Community weniger als 5 % ihrer Zeit auf die Suche nach neuen Ansätzen verwenden und stattdessen stark in Mechanismen zur Weiterentwicklung bestehender Ansätze investieren, die nach einer technologieweiten Genehmigung bereits als Standards definiert wurden. Wir gehen davon aus, dass eine Community die meiste Zeit damit verbringen wird, ihre Lösungen zu verfolgen, zu messen und zu iterieren.
  • Kontinuierlicher Austausch von Wissen, Tools und Praktiken
    Communities sollten für jeden Tech-Mitarbeiter bei Capchase asynchrone Kanäle bereitstellen, um entsprechende Fragen zu stellen und Unterstützung zu erhalten. Im Allgemeinen sollten sie offene Community-Slack-Kanäle, E-Mail-Gruppen – damit andere Fragen per E-Mail senden können, ohne Mitglied zu werden – und bei Bedarf sogar Bürozeiten bereitstellen.
Lesen Sie auch  Die NASA bereitet den Start von drei kleinen autonomen Robotern zum Mond vor

Aktivitäten

  • Befolgen Sie die Best Practices in ihrem Einflussbereich: Diese Best Practices werden dokumentiert und unternehmensweit über eine zentrale Informationsdrehscheibe geteilt.
  • Gewährleisten Sie die allgemeine Zuverlässigkeit und das Qualitätsniveau aller zugehörigen Systeme in diesem Bereich.
  • Übertragen Sie die Vision von Capchase auf unsere Tech-Funktionsbereiche, z. Front-End, Back-End, Datenanalyse, Datentechnik, Datenwissenschaft, Zuverlässigkeit, Qualitätssicherung, CVI usw. mit ausreichend Denkprozessen, um zukünftige Bedürfnisse und Änderungen unserer Ziele zu berücksichtigen.
  • Definieren und schlagen Sie Erweiterungen der Best Practices von Capchase vor.
  • Definieren Sie Code-Reviewer und stellen Sie sicher, dass technische Design-Reviews bei Bedarf einen angemessenen Vertreter der Community umfassen.
  • Regelmäßige Treffen mit allen aktiven Mitgliedern.
  • Teilen Sie Aktualisierungen mit der gesamten Tech-Organisation: z. B. einen Newsletter oder Besprechungsprotokolle.

Verhalten der Community-Mitglieder

Eine Gemeinschaft Ist Für seine Mitglieder ist es wichtig, dass jedes Mitglied in seinen Werten und Verhaltensweisen ein Vorbild für Capchase Tech ist:

  • Die bauunternehmerische Einstellung ist für alle Mitglieder die wichtigste Eigenschaft
    Wir legen Wert auf Taten statt auf Ideen. Jedes Community-Mitglied muss die Verantwortung übernehmen, zur Verbesserung der Community beizutragen, indem es Dinge in die Tat umsetzt und gleichzeitig dabei hilft, Best Practices durchzusetzen. Das könnte darin bestehen, Lösungen in diesem Bereich aktiv zu validieren und umzusetzen, durch Pull-Request-Reviews, Design-Reviews und Beiträge zu neuen Projekten.
  • Nimmt regelmäßig an wöchentlichen Besprechungen teil und leistet einen effektiven Beitrag dazu.
    Die Teilnahme an Besprechungen ist ausdrücklich erwünscht. Aber die Wirksamkeit dieser Beiträge ist das Hauptmerkmal jedes Community-Mitglieds. Community-Treffen sind offen, aber Community-Mitglieder müssen ihre Zeit und Mühe in aktuelle Projekte investieren und nicht nur vorbeischauen, um Interesse zu wecken oder ihr Wissen zu erweitern. Communities sind für Investierte gedacht, nicht für Gelegenheitsinteressierte.
  • Gibt Wissen weiter und validiert Ideen mit der gesamten Tech-Organisation.
    Ein Community-Mitglied muss mehr Einfluss haben als seine direkten Teams. Sie sind dafür verantwortlich, das in der Community erworbene Wissen mit der gesamten Tech-Organisation zu teilen. Aber als Beispiele für die Einstellung der Capchase-Entwickler müssen sie sicherstellen, dass sie sowohl durch ihre Arbeit als auch durch den Austausch von Updates Einfluss nehmen: Sie sollten Ideen mit der gesamten Tech-Organisation validieren.

Wir nennen das unser Prinzip der investierten Mitgliedschaft.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.