Software is complicated. If you keep writing new functionality, maintaining it slows down your ability to write more new functionality. Eventually if you want to ship more new features and not wait an extraordinary amount of time to do so you need more people. This doesn't scale super well so your headcount grows non linearly.
Companies develop a lot of bespoke features used by a handful of their customers. It might not be obvious to the average person what all of those features are. Additionally just scaling software to continue running with more customers using the product is not a trivial task as well. Adding more servers or making servers beefier only works until it doesn't.
Companies develop a lot of bespoke features used by a handful of their customers. It might not be obvious to the average person what all of those features are. Additionally just scaling software to continue running with more customers using the product is not a trivial task as well. Adding more servers or making servers beefier only works until it doesn't.