Pros
ability to telecommute. For the most part the people are nice.
Cons
No career progression possible. Managers do not communicate with their employees. Management plans rollouts and determines product choices. Technical staff are rarely given the opportunity to plan product rollouts. Low pay. Horrilble raises. No bonuses. Health care plan gets worse each year. Company is cheap. There is no test environment. There is virtually no training. Lazy, stupid people are handed senior titles and kept and rewarded for years. Management forces the technical people to carry the lazy, stupid people for years. Management is fully aware they can't do the work, but instead of addressing the issue by putting pressure on them to work or firing them they just make their coworkers do their work for them. The technical people are then forced to do all the grunt work in addition to the more complex work. The workload is not balanced. Some people work their asses off while others do virtually nothing.