Design and architectural flaws are a big issue in today’s world due to quick releases. Insecure design is a broad category that represents ineffective controls that resulted from poor design. While one can’t completely prevent insecure design, there are numerous steps to proactively diminish the amount of flaws. One can establish and use secure development lifecycle, establish and use secure library of design patterns, use threat modeling for access control, key flows, business logic, and critical authentication, and much more. Security professionals should leverage OWASP software assurance maturity model as well to better help structure secure software development efforts