There are good reasons why they have an employee turnover problem.
Pros: learning experiences
Cons: stifling culture, unrealistic expectations, high stress, little hope of advancement
Specifically, they have had entire departments walk out on them multiple time in the last four years. The reason for the four year time window is that that is how long the second-most senior developer has been there. The average is a year. As mentioned in the title, there are reasons for this. Foremost among these is that the management refuses to address the problem, or even acknowledge it, when one attempts to bring the issue and its possible causes to their attention. The company culture is that of a used car lot, with similar prospects for advancement. Low-level employees are used as scapegoats for the mistakes of senior management with depressing regularity. In the most notable instance of this, a developer (whose name has since been forgotten) was saddled with the blame for dropping a database containing eight years of business-critical archived data. The manager who gave the order was promoted shortly after a solution was offered by the company hosting the data (they had fortunately archived everything they hosted). Given this, it should not come as a surprise that unrealistic expectations and deadlines abound, and every development effort comes bound in enough red tape to bring a hardened bureaucrat to tears.
I am aware that this comes across as the rant of a disgruntled employee, and I am in fact most disgruntled. Thus, I urge anyone reading this to research the company for themselves, to determine the truth of my claims. Please do not make the mistake I did in rushing blindly into their grasp.