The primary issues are political and legal barriers to properly build a workable solution.
The first is that the ACA gives states the right to build and run their own exchanges. However, even if they rake the money HHS is still required to step in and fill the gap if they fail. So many states took the money (who wouldn’t) but the program is left to implement a system of unknown size. Just that would doom most IT implementations. In addition there weren’t any IT firms interested in helping to tackle the Federal system, instead they went to the bigger states where they don’t have to navigate the crazy laws that govern IT projects at the federal level. This also allowed them to integrate smaller less complex systems outside the gaze of an IG department who publishes reports that get national attention in their zeal to protect public money.
Second is that funding is discretionary and even though they mapped out the required headcount they Didn’t have the budget appropriated to hire even half what was needed (as defined by outside consultants like MITRE) which left them severely understaffed. My wife’s ‘team’ of 5 was actually 2. There is no chance that Congress would appropriate more money to fix this. It also isn’t like these people are all that great at their jobs. No person really good at their job in the private sector is going to take a big pay cut to work for HHS. These jobs aren’t a bunch of overpaid airport security people but are jobs that pay much much better in the private sector. This means promoting the inexperienced from within and there is no institutional experience to implement a complex system.
Next there is the political decision to fold the exchanges into CMS (Centers for Medicaid and Medicare Services). The congressional Republicans were using every power they could to harass the executives so HHS tried to shield them behind Medicare. However, it wan’t like CMS was any good at this type of implementation and it was now not the only priority for the contract shops to worry over.
The other problem on a technical level was the near impossible task of verifying eligibility of users for subsidies. All the data has to be verified to avoid fraud, this include income. That data is segregated at the IRS and they are prevented by law from sharing ANY of that information with other parts of the government. Thank Johnson and Nixon for their abuse of IRS info. So there is no easy way to automate the approval process based on tax returns. The only sensible way is to have the IRS do it, but that would require funding and no contract manager is going to go to jail to solve a problem without a new budget appropriated for them.
Last is just the factor that any large IT system like this has a horrible failure rate. Supposedly the success rate in the private sector is now above 50% but there aren’t many major news stories when private companies waste a billion dollars on a system that never does anything. The Government is even worse because of the hundreds of pages of regulations meant to ensure money isn’t “wasted”. Sure, the Federal Government generally gets the best pricing there is on products, but the massive overhead eats all of that up and delays the process by months. I think there is a reason that private companies don’t have the complex rules you see in the government. They also don’t have to worry about going to jail if they do break the rules.
I find it a miracle that there is ANY chance that the exchanges might actually be working in time. However, I think it would be wrong to say that it is some inherently governmental problem that couldn’t be solved with smart reform of the laws and congressional support to fix things. One party is invested in always excusing governmental problems and the other is opposed to the idea of trying to fix problems because they are invested in highlighting government failure for the simple purpose of killing it.