Pros
Benefits are good. Decent medical, dental and disability, 401K.
Cons
Very few people are happy. Managers are under the gun to produce, this trickles down to the actual implementors. Long hours are required to meet unreasonable schedules. I worked as a contractor for my first 8 years, a clear violation of the tax code. The IRS would say I was an employee without benefits. Contractors are treated like disposable flashlight batteries. They finally made me an employee, for which I am grateful. However, the great efforts I made whilst contracting were largely unrewarded and meant nothing to my new managers. The year end evaluations are the same cookie cutter evaluations that everyone else uses. Only we have to show how we "lived" the corporate values. The process bears a remarkable similarity to worker evaluations in the bad old Soviet Union. How did the worker exemplify our Communist values? Did he/she contribute substantially to the 5-year plan? Most of the time, developers are trying to keep up with demands, and are happy to meet the requirements. However, in the Jack Welch tradition, management wants superstars. So meeting requirements is not sufficient to advance, and one has little time to possibly exceed them. Working as a developer, my US team got whittled down to just a few contractors in India and Ireland. The work was lonely.