Clearly from the comments there are a lot of reasons for this but I'm going to throw out another that I have some experience with: "living to eat another day"
Sometimes there just isn't any runway, and loosing this deal, customer, etc, really isn't tenable for the company. Features need to be live today.
Did this suck for future me? Yes it did, and to some degree does still. But was it the right business decision? Absolutely.
In a non-start-up environment, it's usually not about the business coming to a crashing halt, but that it's hard to quantify the savings that you will reap by fixing something the 'right way.' This means that upper management won't allocate resources or approve projects/budgets/etc.
Sometimes there just isn't any runway, and loosing this deal, customer, etc, really isn't tenable for the company. Features need to be live today.
Did this suck for future me? Yes it did, and to some degree does still. But was it the right business decision? Absolutely.