Unveränderliche Graphen und Clojure: Wie Nubank auf 131 Millionen Kunden skalierte
Nubank erreichte in nur 12 Jahren 131 Millionen Kunden mit Clojure, Datomic und unveränderlichen Daten. Ihr Stack bewältigt 4.000 Mikroservices, 72 Milliarden tägliche Kafka-Events und 2,5 Milliarden Datomic-Transaktionen. Dieser Ansatz reduziert die Komplexität und liefert integrierte Audit-Trails – ohne zusätzliche Infrastruktur.
Die Bankenlandschaft in Brasilien und Nubanks Start
Die brasilianische Bankenlandschaft wurde von fünf großen Playern dominiert, die 84 % des Kreditmarkts kontrollierten, mit Zinsen bis zu 450 % pro Jahr. Rund 34 Millionen Erwachsene hatten kein Bankkonto, und ein Konto zu eröffnen konnte Monate dauern. 2013 startete ein Team unter Führung von David Vélez (Sequoia Capital), Cristina Junqueira (Itaú) und Edward Wible (Princeton) Nubank mit einer gebührenfreien Kreditkarte über eine Mobile-App – mit Limits ab gerade mal 10 Dollar.
Seed-Finanzierung: 2 Millionen Dollar. Es folgte explosives Wachstum: 12 Millionen Kunden bis 2019, 48 Millionen beim IPO 2021, 100 Millionen bis 2024 und 131 Millionen bis 2025 (das deckt 62 % der erwachsenen Bevölkerung Brasiliens ab). Erfolg durch Mund-zu-Mund-Propaganda.
Die Fallstricke veränderlicher Daten in Banksystemen
Veränderliche Daten machen Auditing zum Albtraum: Regulierungsbehörden fordern den exakten Zustand eines Kunden zu jedem Zeitpunkt – Kreditlimit, Scoring-Modell, Eingabedaten. Streitigkeiten entstehen ohne vollständige Historie. Machine-Learning-Modelle sind nach Updates nicht mehr reproduzierbar.
Traditionelle Lösungen wie Audit-Tabellen, Trigger und Versionierung häufen Tausende Zeilen Code an – ohne jeden Geschäftswert.
Der unveränderliche Ansatz: Jede Änderung ist ein neues Faktum mit Zeitstempel. Den Zustand zu jedem Zeitpunkt abfragen. Auditing ist kostenlos, Reproduzierbarkeit garantiert.
Warum Datomic und Clojure
CTO Edward Wible ließ sich von Out of the Tarpit leiten und priorisierte minimalen veränderlichen Zustand. Er wählte Datomic – eine unveränderliche Datenbank von Rich Hickey im EAVT-Format (Entity-Attribute-Value-Transaction).
- Nichts wird gelöscht.
- Jede Änderung ist ein zeitgestempeltes Faktum.
- Zustand ist ein Zeit-Schnitt, genau wie in Git.
Datomic führte zu Clojure: Das Team verabschiedete sich von OOP und RDBMS. Tech-Stack: Clojure (Backend), Kafka (asynchron), Datomic (Daten), Flutter (Mobile), AWS/K8s (Infra).
Skalierung 2025: 4.000 Mikroservices, 72 Milliarden Kafka-Events/Tag, 2,5 Milliarden Datomic-Transaktionen/Tag, über 85 K8s-Cluster, über 50 Deploys/Tag (Master nach Prod in 30 Minuten).
Nubank übernahm 2020 Cognitect (Clojure/Datomic-Erfinder); Hickey stieß dazu. Datomic wurde 2023 vollständig Open-Source unter Apache 2.0.
Rich Hickeys Philosophie
Rich Hickey baute Clojure in 2,5 Jahren allein. Kernideen aus Simple Made Easy:
- Simple bedeutet unverknotet; easy bedeutet vertraut. Die Branche tauscht Einfachheit gegen Bequemlichkeit ein.
- Werte vor Objekten. Zeit ist eine Abfolge von Fakten.
- Identität ist eine Reihe von Zuständen; Fakten sind unveränderlich.
Folgen:
- Keine Locks/Mutexes, triviale Parallelität.
- Deterministische Tests.
- Datenbanken wie Git: Zeitreise integriert.
Victor Oliveira betont: Hickeys Einfluss geht über die Sprache hinaus und verändert das Software-Design.
Conways Gesetz in Nubanks Architektur
Conways Gesetz (1968): Systeme spiegeln die Kommunikationsstruktur der Organisation wider. Drei Teams bauen einen Drei-Pass-Compiler; isolierte Gruppen erzeugen klobige Schnittstellen.
Nubank gestaltet seine Organisation bewusst um den Stack: kleine, kreuzfunktionale Teams, einheitliche Tech. So bleibt die Komplexität niedrig bei Skalierung auf 131 Millionen Kunden.
Wichtige Erkenntnisse:
- Unveränderlichkeit eliminiert Audit-Infrastruktur und vereinfacht Compliance.
- Datomic’s EAVT + Zeit = Git für Bankdaten.
- Clojure + Conways Gesetz sorgen für Einfachheit über 4.000 Services.
- Nubanks Wachstum beweist: Funktionale Programmierung funktioniert bei High-Scale-Fintech.
- Open-Sourcing von Datomic fördert die Adoption.
— Editorial Team
Noch keine Kommentare.