Welfare and logistics.
They give out gift cards every now and then for holidays, and sometimes they go directly to Jingdong or something like that. It seems that since Milk Tea came to town, going to Jingdong to pick out gifts has become more and more common.
Commercial medical insurance is very good, basically normal visit to the hospital never need to spend their own money.
The lodging for business trips isn't bad, and the BUDGET for meals is adequate.
The logistics department is excellent and is the first to be notified by email if anything happens. Feedback channels are more effective.
The IT department is responsible for a lot of things, from reinstalling systems to distributing mice and keyboards. So much so that I didn't realize until someone trolled me under my answer earlier that not all companies have IT departments that care about installing systems.
Speaking of the IT department, every FTE employee at Microsoft is assigned: a high-performance desktop, two 23-inch monitors, an ergonomic keyboard, and a laptop (which seems to be an X1 Carbon these days). You can also request a WinPhone and Surface RT, but there's a queue, and they're only handed out when old employees leave and return their devices.
Finally it's time to get to the unavoidable software part, and I'll try to pick and choose what I'm sure of. But I can't avoid the one-sidedness of the answer, or as the saying goes, listen to both sides of the story, and listen to both sides of the story.
First, let's talk about coworkers.
Microsoft has given me a feeling that the vast majority of my coworkers are of high quality. I don't know much about other companies, and I don't know if it's true for high-tech companies in general. As for what it means to be of high quality, I think a common phrase on the Internet sums it up nicely: "no hostility".
Of course, I'm almost certain that not all of these thousands of people will be like this, but I'm confident that I've observed enough of them at the grassroots level to be able to say that they are.
Then there's the system.
I don't know if I can be specific about this one, so I won't go into detail to avoid problems. Personally, I feel it's quite reasonable, but there are certain problems, mainly inefficiency, which the company has been improving in recent years.
The grass-roots side of the office struggle I have not seen, but also has a certain relationship with the system. But mainly because there is no hostility.
For interns, in most cases there will be an FTE as mentor to take with them, and even if there is no boss, the boss will personally take with them, and there is rarely a situation where there is no one to take care of them. The salary is not high, but if the interview evaluation is high plus the luck is not too bad, you can still have some dry tasks assigned down and learn something. There is a separate process for interns to be regularized, and the results will be communicated before campus recruiting begins.
More communication with the mentor, some of whom are very shy, some of whom are very busy, may not always be able to take care of them. The first thing you need to do is to take the initiative to communicate with them, and if they don't have a one-to-one arrangement with you, then you should find them. I'm not sure if you're a good person, but I'm sure you're a good person. I'm still in touch with my former internship mentor, so it's good to make friends.
After that, I'm going to talk about the technical side of things, just to represent what I know about coders.
Most teams within the company use C#, but there are also groups that use C++, and those that specialize in Android/iOS development. C# is still absolutely dominant though.
It doesn't matter if you haven't used C# before you start, it's just that you'll get extra points if you're more proficient in C#. Especially if you've had Java experience, getting familiar with C# is a matter of minutes.