Why You Should Give a Damn About Software Design

<p>There are 2 things that make software engineering suck. Bad team culture, and technical debt due to poor design. I couldn&rsquo;t tell you how many personal projects I&rsquo;ve abandoned due to not understanding my code and how frustrating it is working with a massive cluster of WET code all over the place.</p> <p>It makes me nauseous.</p> <p>Writing bad code is just part of human nature. Sometimes we forget things, creep in new ideas, and then get distracted and work on other things. Forgetting all about the structure of the software project and ignoring small warning signs that can lead to massive technical debt later on in the project.</p> <p>This article is not a tutorial but more of an overview for new developers and engineers to understand why software design patterns should be considered.</p> <h1>My Wake Up Call</h1> <p>Being a developer with a non-traditional background can make it challenging to understand the &ldquo;whys&rdquo; of software engineering. I remember when I would ask questions about how something works in an application and I would receive a very good explanation but I also needed to understand why a particular solution was used.</p> <p>Other questions may include&hellip;</p> <p><em>Why is the project structured this way?</em></p> <p><em>Why did you write your classes like this?</em></p> <p>When working at a digital healthcare agency, I had the privilege to collaborate directly with engineers who broke this theory down for me. They were using the<a href="https://refactoring.guru/design-patterns/factory-method" rel="noopener ugc nofollow" target="_blank">&nbsp;Factory design pattern</a>&nbsp;and I think this is a great place for engineers to start if they are very new to design patterns.</p> <p><a href="https://levelup.gitconnected.com/why-you-should-give-a-damn-about-software-design-2a6ddbf3c242">Read More</a></p>