More U.S. technology and engineering workers got bonuses and pay raises last year than in 2009, but the pay hikes were tiny for professionals outside large corporations and Silicon Valley, according to a survey by online recruiter Dice Holdings Inc (DHX.N).

The average U.S. information technology (IT) worker earned $79,384, adding less than $1,000 from the prior year. About half of IT workers got raises, up from a third in 2009.

Average salaries are much higher in California's Silicon Valley and in the Washington DC/Baltimore area, where they average $99,028 and $89,149 per year, according to Dice.

Salaries are lower in Atlanta and Philadelphia but rose at a faster pace there. Pay fell in Chicago and Los Angeles for IT workers.

As the job market gradually improves for skilled professionals, more IT workers have the prospect of moving to another company, putting pressure on employers to retain staff. As a result, more are giving bonuses: 29 percent did so last year, versus 24 percent in 2009.

Companies are facing higher compensation costs, retention troubles, and shortages in certain skill-sets, said Alice Hill, managing director of

Dice's survey included responses from about 20,000 technology professionals from late August to mid-November.

One of the best ways to boost income may be to work for a large employer, Dice noted. Tech jobs at companies with 5,000 or more people pay almost $20,000 more per year, on average, than similar jobs at small companies with fewer than 50 workers. (Reporting by Nick Zieminski; Editing by Derek Caney)