I believe that one of the reasons why companies fail is a lack of focus and fear of simplicity. They focus on too many things at once. Have too many customer-specific features and processes. Want to squeeze a dollar from every opportunity possible, not realizing the incurred debt.
Doing everything yet doing nothing properly.
I believe this is a road to disaster.
I have seen this multiple times.
Processes get complicated. IT development slows down. Products get harder to understand. More people are needed to handle the newly created complexity.
Once, my team was given a task to build a generic pricing rule engine. The engine was supposed to support all the current and legacy business deals. Since the company had been lacking focus, the pricing had gotten out of hand. It got so complex that there was only one person in the whole company who understood the pricing intricacies completely. He tried to explain it to us many times, but the complexity was overwhelming. There were exceptions everywhere.
We should have paused and not ignore the quenching. We should have pushed back to remove as much exceptions as possible. To simplify our pricing model.
This way, all parties would win:
Instead, we have built the engine. It sure brought advantages. However, I believe that removing the root cause would bring benefits of another level.
We followed the thirst. Again. And things got very complex very quickly.
We were very slow. Discussions. Hacks.
It felt like fitting a circle in a square.
Instead, we should have focused on two things: polishing the B2B platform and start a green-field B2C product.
Choose one thing and be the best at it. Stop marginal legacy business lines. Refuse niche requests from small customers. Simplify as much as possible.
Only when the product is saturated, expand. Do it with sharp focus. Create another product which will be the best at what it offers.
Simplify and keep focused!