Software Architecture Interview Questions