Pros
Not many really. Opportunities to work on a variety of projects. Flexible work schedule.
Cons
Upper management only cares about the almighty dollar and keeping the stockholders happy. We don't pay vendors/subcontractors on a timely basis, especially at end of quarters, but yet are expected to hound our clients the second any AR is past 30 days. Office managers are penny pinchers so they get bigger bonuses at the end of the year and there is absolutely no bonuses for regular employees unless you work on some huge project and maybe get a few hundred dollars. Salaries are so out of line with position and experience it's laughable. Many good employees have left because of management, pay, and the endless red tape you have to go through to get anything done (forms and endless approvals).