1. INADEQUATE REWARDS - Everyone wants to be paid more, but how many of us have tolerated less pay to work on great stuff? I would jump to another job for a 5% pay increase only if I already hated my current job. I would never even think about leaving a job I loved for just a little bit more.
2. AWFUL OFFICE SPACE - Important, but not that important. Oddly, my most favorite assignments I've ever had were in the worst conditions. My favorite job ever: writing a custom ERP system with 3 great co-workers. We had 4 desks in the basement.
3. NO SELF-DEVELOPMENT - Not an issue. I take full responsibility for this. That where the "SELF" comes from.
4. INEFFICIENT COLLABORATION - This is everywhere to one extent or another. If the work is important enough, those of us who really care find a way to remedy this.
5. NEGATIVE PEOPLE - They are everywhere, too. Some of my best work has been in spite of assholes who I wish I had never met. But I never let them stop me. Sure, there are (sadly) some environments that are too toxic to fix, but these are the exception. Learn to deal with negative people or suffer. Your choice.
6. FEAR OF FAILURE - Not sure I understand what this means, but it can be a motivator as much as a roadblock. Sometimes we overachievers just have to drag the non-believers along, kicking and screaming the whole way.
7. LACK OF CLEAR GOALS - I see how this can be demotivating, but again, it can be a challenge. On the other hand, some of the most fun I've ever had was building stuff (without goals) and seeing where it would take us. Great places, quite often.
8. MICROMANAGING BOSSES - Again, they are everywhere. I have stock answers for every one of them: a) Where exactly on the project plan is your concern? b) Would you rather have me producing or on overhead?
9. USELESS MEETINGS - They suck, but again, there are many ways to deal with them. Many of my favorite jobs have been full of useless meetings, but I loved the work so much, I just accepted them (telling myself, "They pay me this much to sit through these?!?")
10. WASTING YOUR TEAM'S TIME - Not sure what this means, but once a developer learns how to handle other people as well as the ones and zeros, this isn't such a big deal. Just another issue to deal with.
To me, what's really most important?
Working on something important enough. Getting stuff done. Having fun. If I have these, not much else really matters. If I don't, I move on.