First is the issue of bureaucracy. This doesn't matter to me; it's hard to get individuals to do things, and it's hard to get big corporations to do things. If you want something done, do it yourself. Remember, the same bureaucracy that won't upgrade your Linux kernel is the same one that would be in charge of punishing you for doing it yourself. So don't fear the consequences of actions; if something feels right, just do it. (The one procedure that we can get our sysadmins to do here is to reboot a machine. So we have a "firewall rules" script, writable by developers, that is run from rc.local. If we really need some package installed, we do it from that script and then request a reboot. Against "change control policy"? Probably. Do I care? No.)
Next is having good projects. I suppose this matters for some people, but at the end of the day, I find pretty much everything programming-related interesting. If someone wants me to manually edit a billion records, or something, that's simply not going to happen, so nobody asks. You can't be afraid to push back if someone wants you to do something that you'll hate doing. Nobody wants you to hate your job, after all.
Performance reviews are always stupid. I've never seen the point of them. The people doing the reviews don't know how to program and don't take input from programmers, so the review boil down to random guessing. Which is fine, because a good review gets you no raise, and a bad review gets you no raise. It's just a big waste of time. (I get "meets expectations" every year, because they can only give out one "exceeds expectations". I mostly find it hilarious because I'm consistently in the top of the list of edits to our company-wide source repository. If being the top 10 in a 75,000 person organization is "meeting expectations", the expectations are a little high, I'd say. But that's OK, because management doesn't even know what edits or source control is.)
Strategic priorities are amusing. A bunch of people that know nothing about business or software will make lists of important-sounding things. The reason you are considered "top talent" is because you know this is bullshit. Ignore the todo list and work on what you think is important. (Same goes for the next point, being told how to do your job. If your management can't do the job, how can they check that you are doing it their way? They can't. So do things right.)
"Top talent likes top talent." That I can agree with. I know people can't be fired from big companies, but I wish they could be indefinitely suspended with pay. ("We'll pay you to STOP CHECKING IN CODE.") Then the three people with a clue wouldn't have to waste their time reverting the mistakes of the people trying hard for a good performance review.
The next three things boil down to how management works at big companies. If you are a really amazing programmer, they're not going to make you a manager. That's because they need programmers, not managers. So managers end up being blown-up programmers with enough people skills to get promoted. That means they make decisions with people skills rather than with programming skills. In order to get buy in, you have to "play the game", that is: don't treat it like your glibc mailing list, treat it like you're trying to get someone to date you. Be nice, say how your idea will unify teams, etc. People that can't understand details don't want them. Play to their people skills side, and everything will work our for the best. "I heard about this project and implemented it over the weekend" also works.
Anyway, I think the biggest problem is work environment and pay. I can get a 50% raise if I quit and go somewhere else. I can get a 2.5% raise and 20% bonus if I stay. The economics tell me to leave. You can't beat the economy. Same goes for work environment. I don't really believe that a top 5 corporation can't afford a 30" monitor for me. Stop lying and buy me the shit I need to get my job done. (The reason they don't want to buy people expensive equipment is because most people don't do any work. If those people see the three good programmers with bigger monitors, they'll want them too, just to feel good about their dick size. This goes back to the problem of not being able to do performance reviews properly.)