How to become a Software Architect/Engineer: skills, route & pay — BranchFactor