Persistence pays off. Don't give up. Keep doing great work. Get into the community where you live locally. Do you know who your local Microsoft people are? MCS, DPE other technical roles that live in your area? Do you know who runs your local INETA or
other user groups? Find out. Sign up for any local Microsoft or other community events. Try to contribute locally as well to these things. Work on raising your profile. Become an expert in the product that you want to work on and become an MVP. All these things
can make a difference. As some others here have commented Microsoft gets an incredible number of resumes. You stand a much better chance if you can get recognized by someone on the inside first and then offer your intentions rather than going the traditional
Just so you know I spent 4 years trying to get the job I really wanted here and I was already working here!!!