At N26, we are building a bank the world loves to use. As we expanded to the UK, we faced a challenge. We needed to extract a payment workflow evolved over years of operation in the Eurozone, mix it with the arcane rules of the British banking system and produce a robust and extensible service. At all times, we had to be able to reconstruct and explain the history of every single payment. We had to move fast and not break things. Our solution? A well-worn formalism - finite-state machines! Our team used the meta-language of states and transitions as a common frame of reference. Everyone, from product owner, to programmer, to the person on the business end of the support pager, shared this vocabulary. This talk is an experience report from N26 and ThoughtWorks. We share how in 2018 we built the payment system for the UK Market using finite-state machines as a unifying conceptual notation. We will explain how this approach informed our analysis, documentation, implementation, resilience and observability. We will discuss the design decisions we made and the tricks we used to make our lives easier.
Mon 15 JulDisplayed time zone: Belfast change
15:30 - 17:00
|Finite-State Machines: All models are wrong but this one is useful|
|The Tricks of Game Programming in a Pure Functional Language|
Jordy Moos PB Web Media