If you got a Ph.D. in some field and wanted to do R&D in it without trying to go tenure-track, then the national labs, and occasionally the contractors, used to be a decent compromise. Bell Labs was gone, Google wasn't yet running its moonshot factory, and Softbank had yet to open its pocketbook. Depending where in the country you want to be it still might make a little sense.
But if you're a programmer without a scientific speciality, then there's less reason.
The contractors have some freedom to pay as they see fit -- they pay more than the national labs in my experience -- but they still have to justify their rates to the government during contract negotiations, and the government can push back. The pay is "ok", but has been falling increasingly behind "Tech". So now there's brain drain, particularly among programmers.
But if you're a programmer without a scientific speciality, then there's less reason.
The contractors have some freedom to pay as they see fit -- they pay more than the national labs in my experience -- but they still have to justify their rates to the government during contract negotiations, and the government can push back. The pay is "ok", but has been falling increasingly behind "Tech". So now there's brain drain, particularly among programmers.