Startups might force you to leave because they die, but giant corporations will make you WANT to leave because they're terrible to work for. This is more of a general note than anything else (as in, not just programmers), but many of my friends who have taken corporate jobs have ended up leaving them for something else, like a startup or consulting shop, because while the pay was great, the work was boring and the culture was just awful. Startups can be like that too, but generally even if they are you have way more power to change things.
It's all a trade-off. You trade the fun of constant change for possibly better, but definitely more reliable, compensation. That is, until your company starts downsizing because someone up top bought 1 too many Ferraris.
I'd love a list of big corporations that are actually great to work for. It seems like Google is in this camp (I know, not for everyone, but it seems like most people have positive experiences there), maybe Facebook. I hear mixed things about Microsoft. What are the top ten BigCorps to work at as a developer?
This is pretty easy.
All of them, if you're on the right team, working on the right project.
Broad generalizations are pretty useless for something so intensely personal.
Ok, so it's possible to have a great experience at any huge tech company. That doesn't mean there aren't some with a better chance than others (it also doesn't mean that there are). Also, while everyone experiences things differently, I think there are probably some things that most people will agree on as good things and bad things in an employer. I will venture to name some:
The opportunity to work on hard/interesting problems; good salary/benefits relative to the industry; the company is interested in advancing your career/training you to be better when you leave than when you came in; the company places an emphasis on engineering rather than treating it like an unfortunate necessity; programmers are given some level of autonomy or self-determination, the structure is not overly hierarchical; the company tracks developer productivity in reasonable ways rather than based on LOC or ass-time in seat.
There are probably a lot of other things that could go on that list, and at some companies, I'm sure that all of these really depend on where you are in the organization. But I can't believe that these and other things can't be influenced by corporate policy and practice, and that there aren't some companies that make these sorts of things a priority when others don't.
All that being said, I asked the question because I've never worked at a big company before, and maybe I'm totally off base. I was genuinely curious. I'd be happy to hear people's impressions of different companies, or a real explanation for why all big companies are the same and none of them are any better than any others at keeping their developers happy. But just waving your hands doesn't seem any more helpful than overbroad generalizations.
I've worked at big companies, small companies, and government agencies.
You're asking for specifics based on generalizations, which is what I was suggesting you can't really get.
Corporate policy in Corporate America is, much like everything else, basically the same across the board, for legal reasons.
What's written down isn't the real driver of company culture and individuals enjoyment and fulfillment in their jobs though.
I've worked ridiculously horrific hours for substandard pay, but loved it because of the team and folks I was working with (common thread from the military: working in the face of adversity breeds camaraderie). The company, boss, the end users could have cared less and provided nothing on your list of 'good things', but it was still a job I enjoyed working at.
I've also worked for companies that checked every 'this should be awesome' box, and found it soulless, with a poor team of folks doing just enough to skate buy on their cushier salaries and lower hours.
Anecdata aside, it's like asking if it's possible to have a good life in America: it depends on what you want, but probably, yes. Where you live, what you do, who you socialize/work with, etc. is highly personal, and drives everything. While YOU (hypothetical you) may think the Silicon Valley is amazing, I know great folks who want nothing more than to live 50 miles from their neighbors in the woods in Maine. They're happy, etc. doing what they do, living how they live. They'd be miserable in NYC or the Valley. Likewise, hypothetical you would be miserable in their log cabin in the woods.
You might love Google or Yahoo or Microsoft, while someone else absolutely hates it. That's got VERY little to do with policy, and nearly everything to do with your personal life philosophy and the team/individuals you end up working with.
Even within a company, this is largely a function of what your project is, and how your boss treats you. If the project is challenging, new (no historical shit to clean up) and your boss takes good care of you, yes, great fun it is
It's all a trade-off. You trade the fun of constant change for possibly better, but definitely more reliable, compensation. That is, until your company starts downsizing because someone up top bought 1 too many Ferraris.