The Modern .NET Show cover image

The Modern .NET Show

CQRS, System Maintainability, and Pragmatic Tech Choices with Dejan Miličić

Sep 27, 2024
Dejan Miličić, Head of R&D at RavDB and a seasoned software consultant with 25 years of experience, discusses the essence of maintaining software systems over time. He emphasizes that developers spend 90% of their time on change requests rather than building new systems. Dejan dives into CQRS, exploring its benefits in system design, while addressing common misconceptions. He also warns against premature optimization and vendor lock-in, advocating for a deep understanding of historical programming practices to enhance modern development.
01:04:59

Episode guests

Podcast summary created with Snipd AI

Quick takeaways

  • The majority of effort in enterprise applications focuses on maintenance and adaptation rather than initial development, often leading to complexities over time.
  • Implementing the CQRS pattern enhances system maintainability by clearly separating command and query functionalities, thereby reducing unintended side effects.

Deep dives

The Importance of Maintenance over Building

Most of the time spent on enterprise applications involves maintaining and adapting existing software rather than building new features. The typical lifecycle of an application often consists of 10% dedicated to initial development while the remaining 90% is focused on responding to change requests and ongoing maintenance. As the software ages, the complexity of this maintenance grows, leading developers to sometimes consider rewriting from scratch. Emphasizing process improvement to avoid total rewrites is crucial to maintaining quality systems.

Remember Everything You Learn from Podcasts

Save insights instantly, chat with episodes, and build lasting knowledge - all powered by AI.
App store bannerPlay store banner