Part of the reason the US government needs to use consultants is because they can't actually pay enough to hire senior developers directly due to the constraints imposed by the GS pay scales. Often times the top levels of the pay scale aren't even available because there is some rule about how people can't be paid more than someone else. So instead they pay for consultants and all of their overhead.
(Of course there are more reasons as well, but this is a popular one that some of my friends in government agencies complain about.)
(Of course there are more reasons as well, but this is a popular one that some of my friends in government agencies complain about.)