
In this episode I talk with Dave Farley about how good software engineering prioritizes making code easy to change, since we inevitably need to revise our systems as requirements evolve. Dave also shares stories from building ultra-fast financial trading systems, where his team had to repeatedly rethink their architecture to meet performance demands. We also discuss how key concepts like abstraction and modularity connect to scientific thinking, with both requiring a healthy skepticism toward our own assumptions.
Listen Now