The profit margins are fairly low, I believe, (in terms of basis points) which may be why the IPO has been delayed for so many years. I am guessing the revenue and earnings per employee are not that good. The product itself is very complex and bloated with over 4 million lines of code. The technology was developed almost 20 years ago and is very complex to maintain. The coding practices are quite dated at this point. Newer techniques and languages that more modern shops use won't be found here. If you are a Java programmer you won't be using the advanced techniques you see in Java 8 through 12. In fact the codebase was developed before Java 5 was widely used and the code mostly reflects that. The product also relies heavily on XML which, although serves the purpose, has of course fallen out of favor for more readable languages.