Back to all work
Fintech · Platform
Ledger
Rebuilt a payments ledger from nightly batch reconciliation to a real-time, double-entry event log.
- Client
- Fintech scale-up, Berlin
- Role
- Lead backend engineer
- Year
- 2025
- Category
- Fintech · Platform
The engagement
Ledger started as a Rails monolith with balances computed on read. By the time I joined, reconciliation ran for four hours every night and finance had a spreadsheet to correct the corrections.
We moved to an append-only double-entry event log in PostgreSQL, with projections rebuilt from the log on demand. Every balance became reproducible from first principles, and the nightly batch turned into a continuous consumer.
The migration ran dual-write for six weeks with automated diffing between old and new balances, so the cutover itself was a config flag rather than an event.
Tech stack
Go
PostgreSQL
Kafka
gRPC
Terraform
AWS