1. MS was never amongst the top payers. Their policy has been to underpay and let the stock pick up the rest. Back in the day the understanding was if you stuck around for 6-7 years at MS you'd clean up. As in retire early. Now the stock is shit and the option situation is changing across the industry.

2. The problem at MS isn't some big corp mumbo-jumbo where folks don't want to see other people get ahead. It's the stack ranking combined with the requirement that the individual needs to demonstrate their successes. So as an engineer you need to sell what you've personally done to your boss so he can sell it to the the other bosses when your rank is being decided. Which is a shit ass system. Go read mini-msft for a bit.

3. Generally speaking that 9-5er who is consistently working on the crap code that you're too good to write is the guy that pays the bills. The genius who's always spazzing out and showing up at noon because he was up all night checking in broken ass shit, fuck that guy.