1. The engineering managers are (with maybe two exceptions) terrible. They do not support the engineers. They support other managers and brown-nosers. If any manager has any kind of conflict with any engineer, the managers all gang up on the engineer. Add to that the fact that some of the managers are charming narcissists and you have a recipe for unhappy engineers. It is a very "in group" and "out group" culture. If you end up on the wrong side of one of the narcissistic managers or if one of the incompetent data scientists figures out that you're onto him, then you will be shunned.
2. Several of the data scientists are incompetent at data science but excellent at speaking in a way that makes non-technical people think they are smart. These folks impress the management who like to fancy themselves as technically capable. These incompetent data scientists manipulate and fool the managers. Thus, the competent engineers and data scientists have to deal with (A) the messes made by these incompetent data scientists, (B) the ire of the management when they complain about the incompetent data scientists, and (C) watching the incompetent folks be promoted. Not fun for the competent folks.
3. Many of the (product) managers fancy themselves as technically competent. Thus, instead of focusing on communicating the customer requirements, they write horrible APIs and tell engineers to implement them. They ask technical questions and imagine that they understand the answers. Then they fancy that they can talk tech. They ask the engineers to explain the technical design instead of focusing use cases. It is a phenomenal waste of time for engineers.