> they can't actually pay enough to hire senior developers directly
I had the impression that it was also easier to fire contractors. (Well, not to renew their contract.)
If a developer who works directly for the government is underperforming, their boss has to jump through many, many hoops to fire them.