Also, they are not great at marketing. For example, in the latest release notes, the main headline talking point is robotics, and not games.
I think the tech is actually good, I prefer both the component system and ScriptCanvas over Unreals component mess and Blueprints. It just needs much more polish. And a big game company trying to actually make a game.
The whole thing is a massively big hairball of C++ code that was started in the mid-90's by Crytek as CryEngine and has since gone through multiple hands, all with different opinions on how a game engine should be designed leading to various rewrite attempts. Nothing good can come out of such a situation, this is actually a rare case where starting from scratch would have made more sense.
Double Helix says fine, we can make one in 5-6 years. The plan travels slowly across Amazon, until it hits one particular individual that doesn't like it. Executives then start to look for an engine. First they talk to Unity, which was surprisingly receptive to the idea, but not much happened in the end (should be around 2014, around the time John Riccitiello became CEO). Cue in Crytek and Amazon becoming aware of their financial troubles, and the rest is history.
The press release hits, and that's how Double Helix learns of what's going on. Now they are not only supposed to make an engine, but merge the older version of CryEngine as well. That went as well as you would expect. It took them 2 years just to make something workable.
O3DE came to being once Amazon realized Lumberyard didn't have any mind-share at all. Nearly no part of the CryEngine code base is left, from my understanding. A lot of the original plan from Double Helix finally materialized in form of Atom, and other gems.
Though CryEngine was a major hindrance, and some of its effects can still be felt, O3DE is now its own thing. Still leashed to Amazon mind you, and all their bright minded executives. But at least all of the CryEngine code has been ~~purged~~ removed.
Having said that, it basically has nothing in common with the mid-90's code, either in details nor design. It's dysfunction is almost entirely modern by now.
Essentially, while CryEngine was a detour and got us where we are more slowly, it's ended up basically where they were aiming for in the original start-from-scratch scenario.
There is an argument that the more direct approach may have lead to less turnover and a more coherent engine. But IMO, the dysfunction is more likely the result of systemic problems at Amazon organizationally.