Software architecture is what adopts non-functional requirements like reliability, flexibility, scalability, feasibility, reusability, security, etc into a working product or service that meets the technical and the business expectations. Software design is the process of translating functional, business requirements into code level design ideally following SOLID principle and applicable design patterns. More details are here. I especially liked comparison of Monolith Architecture and very popular at the moment Microservices Architecture.