Wouldn't they deploy at least some of the key new functionalities in a test environment and QC before deploying to the production site?
They probably do, but testing for specific scenarios can easily fall through the cracks. Usually a QC site means somebody takes a quick look, verifies it didn't blow up, and says they're good to go. Larger, more bureaucratic companies tend to have more formal processes. Even still, testing only works if you test for specific scenarios.
What my company (and any reputable development shop) does is something called unit testing. Basically, you write code that automates the process of testing your real code. This way you can be very thorough in your tests without having to do tedious manual tests, which would be a time suck. This is still not foolproof, but it goes a long way.
Using this new system as an example, suppose they had a bunch of existing tests for the old system testing every spec. They write the new system, test it against the old specs, and see what breaks. Some of the old tests may no longer apply, or the expected results may change, but when there's a failure at least a person has to look at it and make a decision. It not only saves headaches, your company doesn't come off looking like a bunch of incompetent morons.
I would find it hard to believe a software-driven company like Prosper wouldn't do this, except for all the other mismanagement.
