Every year CppCon presents dozens of sessions on how to produce high quality C++ code. But high quality software products require more of software engineers than just good coding. Great software products are built by engineers with great design skills, so CppCon also presents sessions focused on designing software components of high quality.
To advance this objective, CppCon features an official Software Design Track. This track addresses the art of managing the interactions between software entities, of reducing coupling and of creating good and meaningful abstractions. It focuses on maintainable code and how to design for changeability, scalability, extensibility, and testability. Talks in this track include thoughts on design techniques for all paradigms and both static and dynamic polymorphism, design and architectural patterns, good and bad experiences from real world projects (i.e. war stories), and even advice on how to manage big projects via proper software organization.
Please contact the Software Design Track Chairs, Mike Shah and Klaus Iglberger, if you have any questions or suggestions.