(via Brendan McDermid/Reuters)
Confidence in software can be a company's undoing. The higher ups do not know if a million lines of code are proper, all hopes were put onto the engineer. The code executes, the loops run. What happened next? The software lost $440 million US dollars in the stock market in 45 minutes. (Starting 9:30 AM Exchange time on 8/1/2012)
The Knight Capital Group, out of New Jersey, let their automatic trading software run unmonitored for 45 minutes. During that time, a slew of unauthorized trades were made. After noticing the error, the company then offloaded the shares. This is where they realized the enormous loss. The loss is almost equal to their entire quarter two revenue. Shares plunged by 63%. The wild swing affected more than 100 companies (Ford, Radioshack, American Airlines, to name a few larger ones.)
Although the software needed to have fail safes built in, the deployment was in a rush. Knight thought it could impress the industry by towering gains on the first day. Approval of the software and its introduction was "incredibly quick" according to some competing firms.
Within seconds of the market opening, the software began to fail. The software was supposed to react to changes in the market and place trade to run with the tends. Instead, the software decided to make offers to buy and sell large US based company stock. The new York Exchange had noticed the error right away, but had to way to stop the erratic trades. ("Circuit breakers" to halt stock trading apparently exist while at the same time do not work during the first 15 minutes of the trading day.)
The exchange shut down Knight Capital Group after 45 minutes. Ironically, properly functioning software at other firms quick pounced and profited from Knight's malfunction. The Security and Exchange Commission is now investigating whether the code was tested properly before live execution. Ultimately, their punishment will be more severe than a loss. Most speculate that the company will fold.
We all already know, redundant code validation is the only way to develop software.
Cabe