Company: Microsoft
Date: 2020-02-06
Overall rating: 5/5
Employment status: current
Experience level: Junior

Truly an excellent job
Pros: Work - life balance.  Flexible hours. Everyone respects the personal time of others. On-call can be an occasional exception to that, but it's inevitable and handled very reasonably. 

Salary and benefits are among the most competitive in the country.

Freedom: You are trusted to figure things out on your own, there's zero micromanagement.

Variety of work: ML, Big Data.. pick any buzzword and someone in MDCS is doing cool work with it. Others are working on serious products that earn an absurd amount of money. There's something for everyone.

Culture: The perfect blend of Western and Serbian culture, amazing, reasonable people.

Meritocracy done right: For everyone I've met so far it was apparent that they more than deserve their position. I haven't observed anyone's talent and hard work going unnoticed.

Management is great. Nobody gets off on their authority.
Cons: Salary: It's great for Serbia, but engineers doing exactly the same work, just as well, inside the same team are being paid significantly more, because they live in a different country. This isn't on MDCS leadership, it's on their bosses for not throwing more money at them. Sure, we are compensated competitively in the local job market, but why does anyone deserve less money for being Serbian instead of American? Now that you've fixed the gender pay gap, fix the ethnicity pay gap. You can afford it. You would also end up capturing some brilliant minds who end up migrating outside the country, often to a rival company, because of the absurd pay difference.

Not a huge obstacle, and more often things are done right, but some development tools and processes BADLY need to be reinvented from scratch. This is not really an MDCS-specific issue though.

The vendor system is not ideal, but not a huge problem, and appears to be going extinct.

Secrecy about salaries - I see no reason.