-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.