There are none... really, there are none...
Actually, whether the company is good or not depends on which department you work in. Unfortunately, the department I happened to join was terrible.
First of all, management dumps all the lousy work on their subordinates. If you are a passionate technical employee, you will have a very hard time here, because the managers only want you to work on projects and meet deadlines—don't bother thinking about improving the system architecture or anything like that. Bonuses and promotions ultimately go to those who are obedient and get things done, while people who offer suggestions are eventually marginalized.
The company places great importance on appearances. Managers only like to pick faults; if your work log is not written nicely, or if you say something slightly unpleasant in a meeting, you will be singled out.
The company generally only values the business side. Managers show serious favoritism toward sales and PMs. It is fine if a PM does not provide a specification document, but if an engineer's code has a bug, it is treated as an unforgivable offense.
Don't expect department managers to help shield you from requests. Quite often, junior managers will simply push their subordinates out in front. All cross-department coordination has to be handled by the people below, while junior managers are usually surfing the internet at their desks or sneaking out to smoke, drink coffee, or both.
The project processes are a complete mess. More and more email threads and Skype groups are created, and eventually no one knows the status or who is responsible. Meanwhile, the people at the top only care about when the project will go live.
You have to pay for department dinners yourself. Because this department is small, it is difficult to secure resources from the group, so managers have no choice but to pressure everyone into paying out of pocket to put on a show of fostering team camaraderie.
Engineers repeatedly perform routine maintenance work, which makes the manager happy. But when engineers want to write systems to improve customer service or operational processes, the manager gets furious.
The manager has no backbone, so many long-serving old-timers overstep their boundaries and do work that the manager should originally be doing. Newcomers, be very careful not to be fooled.
If you want to do your work properly, do not join this company under any circumstances. But if you like sucking up to your manager, this place is perfect for you.