Working at a big company makes sense if you can get allocated to a great project, and it's hard to tell from outside what the good projects are. Otherwise, you have to deal with red tape and approvals and resource requests and headcount issues that will eat your soul and turn you just as lazy as the middle managers who create such processes (who do so because they've become demoralized and lazy and realize that dysfunctional bureaucracy, like undocumented code, provides job security).