17:40 - 18:40 (UTC+10)
Talk (60 min)
Learning to Love DDD - a Tale of Two Products
Over the last 16 years, I've been fortunate enough to launch two successful businesses as a hands-on CTO/co-founder & developer/architect. The first, Flexischools, provides online services to schools & parent communities, and has supported millions of Australians over the years.
When we launched Flexischools, I was relatively inexperienced - I did my best to follow the guidance I could find online, but I frequently found myself struggling to incorporate the burgeoning growth in complexity of its feature-set into an increasingly tightly coupled code-base with a very small team of developers.
In 2015, I discovered DDD, and when reading the Blue Book, I felt a light bulb going off on every page. When we launched our second product, LanternPay, I vowed not to make the same mistakes.
LanternPay is a healthcare & disability claiming & payments platform supporting hundreds of thousands of Australian care providers and recipients to ensure prompt and equitable access to care.
In this talk, I'll reflect on the comparative experience of launching, operating & scaling both products and the impact DDD had on the technology & the business.
Some key questions we'll explore:
- How to use DDD when you're launching a new product into a new market and there are no domain experts to consult?
- Why it's not a good idea to use the same object/table to store both the size of a school uniform t-shirt and the presence of a slice of cheese on a sandwich
- How to make the business case for a major multi-service refactor when your DDD-inspired domain understanding evolves mid-project