Datomic updates in production systems face a choice: take advantage of dead-simple reads with snapshot isolation in application code, or shove business logic into the serial transactions for foolproof consistency. The first option is good enough for many applications – until it bites you back and you end up charging your customers doubled fees. The second option is as safe as it gets – until you hit a scale of millions of customers and the transactor cannot keep up. In this talk, you will learn a few techniques we use in production to navigate this tradeoff and ensure consistency between the snapshot and the transactional levels.
Gustavo Bicalho (Nubank)
Gustavo is a software engineer at Nubank, building microservices and whatever else is needed to get the product running. He believes the tech industry can be a tool to positively impact the world, if we can focus on solving the right problems. He likes programming and drawing weird diagrams in whiteboards, reading science fiction and learning about how the mind works.