A software architect is a professional responsible for making high-level design choices connected with software architecture. They set technical direction, create architecture patterns, and ensure that technical standards are upheld throughout the development process.