Government Development jobs just don't pay enough to be competitive for talent. So instead talent goes to outsourcers. Here in the Netherlands that has meant most big government development projects are done by outsourcers. Which leads to bad incentive alignment. Yielding cost overruns, projects that are DOA, and projects with way to large scope. And at the bottom line, the consultancies are better of keeping it this way than to improve things.
But government is not agile enough to pay fair wage for development work. Besides, it would be unfair to all other government employees if these developers made so much more money with less time on the job and the same level of education. (sarcasm)
There's also the fact that the number of hours worked is always fair, and that you can move within the public service very easily.
Because it is largely the outsourced big projects where our Government fails.
Let's say government hires 1% of the developers in the country, foreign companies pay them 3 times more and if not for outsourcing 50% of these people would have to emigrate.
If X is base salary ignoring outsourcing then the country would earn 0.5 * X * tax_rate - 0.01 * X without outsourcing and 3 * X * tax_rate - 0.01 * 3 * X with outsourcing
So the change is (3 - 0.5) * X * tax_rate - 0.01 * X * (3-1) = 2.5 * X * tax_rate - 0.02 * X = X * (2.5 * tax_rate - 0.02)
So in this simplistic example for the country to benefit from outsourcing it suffices that tax_rate > 0.008 which is pretty much always true.
Let's say government hires 10% of developers, nobody would migrate and the salary difference would be 500%. Even with such unrealistic assumptions the tax_rate would just need to be higher than 10% for the country to benefit from outsourcing.
tax_rate > (5-1) * 0.1 / (5-1) = 0.1
If you want to play with it it's: tax_rate > ((salary_foreign - salary_domestic) * percent_hired_by_government) / (salary_foreign - (salary_domestic* forced_migration))
Personally i'd agree that this is good for individual employment prospects, but not necessarily good for the country itself.
For example, here in Latvia i've heard that there's a shortage of developers and hence many government projects can't be fully staffed easily, because they're having problems being competitive in regards to wages, when compared to outsourcing companies, like Accenture.
Of course, there's no reason for why any developer should work against their interests in regards to being able to save and earn money, but it does seem interesting - maybe i'm wrong and it's just a regional thing?