what does a solutions architect do