Here's the problem: the company doesn't really understand how software development works. For the work being done, developers are underpaid and underappreciated. Projects are usually underquoted, and most of the time the client expects more than what was agreed upon because of the upselling and overpromising that seems to happen. Because of this, projects are often forced to be done haphazardly, and there is more tension than necessary between the client and the company. More than anything, this causes the developers to feel underappreciated, as something they know should cost a certain amount of money and should take a certain amount of time is taken on by the company at a much lower price. This would not be a problem if this happened in just a few cases every now and then, but it seems to happen all the time.
In regards to the management not understanding how software is made, this is most evident in the fact that the sales and management often try to micromanage the developers. The sales guys are basically the project managers, and that right there is a big problem. They don't know even the first thing about development, and basically are stretched thin because they are doing 2 jobs, of which they are really only qualified to do the first. However I cannot stress enough that it isn't the fault of the sales team at all; it's the faulty system that is in place that is the problem. There are no real senior developers at the company. There is no one to really lead the developers and teach good development practices or anything. Everyone is, in terms of experience, a junior developer, and while this in itself isn't a bad thing, it becomes clear after a while that this is an issue.
On top of this, the company is spread all over the map, and not really proficient in any of the areas. E-commerce shop customizations (closest to proficient in, and to be fair, this part is the focus of the business), web design, web development, hosting, SEO, etc.
Overall, the problem is that the company really doesn't have the experience or knowledge to do anything but fairly basic to intermediate stuff, and if you have any goals of self improvement, you'll hit your growth cap at this company very quickly.