Wednesday 

Room 2 

11:40 - 12:40 

(UTC+02

Talk (60 min)

Building an Application with TDD, DDD and Hexagonal Architecture - Isn't it a bit too much?

Many experienced developers are longing for an opportunity to build an application from scratch. Compared to the heavy legacy applications, which are seen as filled with technical debt and incomprehensible architecture and design choices, a fresh start promises that you can finally write code and build an application "the right way." On the other hand, experience has taught us that complexity in the code creeps in regardless. We wondered then if the very principles we based ourselves on, could actually contribute to making the code harder to read and maintain in the long run? This presentation will show how we built a backend application for integration between three different systems based on TDD, DDD and hexagonal architecture. Along the way, we have assessed the complexity of the solution and asked ourselves some questions: - Have our decisions about isolation of the domain model and abstraction layer between the systems led to less or greater complexity? - What constitutes a domain model? - What about deliberately reduced test coverage on selected parts of the code? The presentation will conclude with a balanced look at the decision-making process we used while we were writing code and whether it was worth applying "best practices" to this application at all.

Mufrid Krilic

Mufrid is devoted to leading and coaching product development teams, by cultivating knowledge sharing in the organization and increasing co-developer’s business understanding. His professional philosophy is rooted in Domain-Driven Design and in building agile and technical coaching culture on an organization-wide level. With 20+ years of experience as software architect, developer and technical coach, Mufrid has been deeply involved in developing enterprise-solutions in complex domains, such as healthcare, insurance and telecom.

Currently working as a consultant and Domain-Driven Design coach at CoWork, Norway.

Apart from work he enjoys spending time engaging his children in STEM activities. Mufrid is an enthusiastic First Lego League mentor and has actively contributed to the FIRST community locally and internationally.