Pros
The people are the best part about the company (Upper management excluded). Good Health Benefits, typical 401k match program, little inner office parties, and Christmas Party.
Cons
Upper management are so detached from the company employees it is painful. You can introduce yourself to upper management numerous times and they still do not care to remember you or your name. Turnover is rather high, especially overseas. Segregation of the offices kills morale (among other things) for low level employees. The company is soul focus is the bottom line, which means, long hours for analysts and IT (which you receive no pay for even if you are hourly). They limit overtime to keep cost down, but work load only increases. Since it is customer based, both the analyst and programmers get abused by the client, which leads to the managers to put more pressure on because work is not getting done on time correctly. The senior management teams, waste time, money and effort on useless analysis to improve functionality and efficiency, and still cannot figure what the problems are with the company. Salaries are a joke, you can have experience and degrees, it still will not matter because you are only allowed to come in at the same rate as the people in your department started at. There is no upward mobility, only lateral moves with little to no salary increase, transferring to a new role only happens under rare and certain circumstances.