Talk Details

Design principles for the effective developer


How many design patterns and principles can you name as developer? Are they important? Should we not rather focus on delivering features, as long as it works? It’s a non-trivial balance between reasonably designing our systems, with well-laid-out structures that communicate the intentions, or over-engineering them. This session shows which design principles effective developers should know about, why they should care, and most importantly, how to productively approach design and architecture. We’ll have a look at the SOLID principles, will see why the chosen design is more important than the actual technology choices, what’s behind crafting maintainable test code, and what to know about Domain-Driven Design. All of that with the goal of keeping a high velocity and creating beautifully crafted code.

Scheduled on Friday from 18:40 to 19:30 in Room 1

Code Quality

Sebastian Daschner


Sebastian Daschner is a Java Developer Advocate at IBM, a consultant, author, and trainer. He is the author of the book ‘Architecting Modern Java EE Applications’. Sebastian is participating in the JCP, helping forming the future standards of Java EE, serving in the JAX-RS, JSON-P and Config Expert Groups and collaborating on various open source projects. For his contributions in the Java community and ecosystem he was recognized as a Java Champion, Oracle Developer Champion and double 2016 JavaOne Rockstar. Besides Java, Sebastian is also a heavy user of cloud native technologies. He evangelizes computer science practices on, his newsletter, and on Twitter via @DaschnerS. Sebastian kickstarted the JOnsen and jSpirit unconferences that connect Java developers throughout the globe. When not working with Java, he also loves to travel the world — either by plane or motorbike.