Pros
Interesting field where you might feel that you can make a positive difference. Fairly relaxed environment. Flexibility of hours, possibility of remote working. The CEO and some of the upper domain expert management are excellent.
Cons
Extraordinarily messy code (countless 50,000 LOC God classes) and as a result, the software is riddled with bugs, very difficult and time-consuming to work with, and impossible to test. Developers are often incentivized to "quick fix" bugs and features, which leads to more bugs. Nothing in "Extreme Programming" is practiced. Inexperienced architects, kludgy processes, and inexperienced managers that make kludgy processes even kludgier, because they do not understand the nuances of software engineering. Most of management has little or no experience actually producing code. Almost no automated testing anywhere, and heavy reliance on manual QA testing. Product owners tend to have no idea what's on their own backlog, as items are generated by developers. Vocalizing pain points is penalized, rather than rewarded. Most developers tend to "do as they're told" without risking being outspoken, even if this would result in a better solution. These cultural weaknesses, slow processes, amount of technical debt, and lack of technical leadership means that this company has become a ship sailing straight into a storm. It would be redeemable if the captain wasn't pretending the storm didn't exist.