Both companies are excellent, but you should consider the following factors when making your decision:
• Long-term career goals and innovation:
Currently, Amazon is thought to be innovating in far more areas and far more ways than Microsoft (MSFT). You should consider the long-term attractiveness of the field in which you will be working to future employers. This could imply that your job at MSFT will be more exciting due to this (or vice versa).
• Compensation and opportunities:
If your total compensation in San Francisco is three or more times that of what you are offered in Seattle, your options for hopping around within the internet-tech sector are much more significant in SF, and with that kind of compensation, you can probably afford to rent a decent place while still saving for housing in the future.
However, unless you have a highly sought-after skill or work in an industry where you are being headhunted, the compensation in SF is unlikely to be multiples of what you are being offered in Seattle. I would suggest that you make an accurate estimate of your living expenses in San Francisco and see if you are comfortable with the amount of money you will be able to save as a result. Rent in San Francisco must be considered part of your “expendable” costs.