Microsoft software engineer requirements 2022.