Pros
-Part time, partially remote work available -Good for students -Friendly co-workers
Cons
-Haphazard development practices where requirements changed very often to suit clients, while clients believed the product to be complete already. -Insufficient code review / quality control: frequently items had to be fixed in live production systems, sometimes without client knowledge. -Refusal to follow modern development practice: I frequently suggested moving forward with proper automated testing / unit testing, but other priorities always took precedence. -No advancement possibility: there is no yearly review of any sort, and I never saw any other colleague receive a promotion of any kind. -Hostile management: individuals are directly blamed for actions in public space for any number of reasons when this could be handled much more tactfully. -Low redundancy: typically each project has only one team member working on it, which makes fixing issues in the absence of that team member very difficult. -Questionable ethics: Often attempts are made to work around fully adhering to software licenses, and employees are put in an awkward position and instructed not to give out this information. -Work / Life balance was not existent: there were frequently projects in which we were expected to work strange hours over the weekend or late in the evening.