There are definitely some outstanding employees at the company, yet many have not gotten a raise or a bonus in years. Due to this, people are leaving the company. And, sadly, it is the great workers that are leaving since they feel neglected.There needs to be more attention to those that perform better than necessary.
Create a culture of trust and empower the teams. Obviously to succeed with a culture of trust, you have to give ownership by empowering your teams to get results. Doing so increases productivity and motivation. Let the team decide how they will deliver the expected results. They have ownership and hence are accountable (Agile & Iterative Product Development advocate)
Good people are leaving. It's nigh on impossible to get anything done there, and offshoring is not helping product quality. Lastly, if you think people are going to go the extra mile when performance is obviously not rewarded, that's a big mistake, and if the economy ever picks up again, the people who you wanted to keep *are* holding grudges to the extent they're not leaving already, and will be out the door en masse.