I'm glad you move in optimistic circles because all I see these days is a pervailing sense of pessimism. Nothing is really all that interesting to work on. 4 tech jobs in 8 years in 4 widely different fields, and I cannot say that any of it has been all that different or interesting when it finally comes down to it. Writing customer support software vs. printer drivers is just about same when it comes to the everyday stuff of making it work. Maybe this is my viewpoint from predominantly a QA point of view and maybe I'm just really burnt out after the last gig at Enormous Bureaucracy Corporation, but from talking to coworkers, I know I'm not the only one trying to figure out where the good ideas are anymore.

And flying by the seat of your pants only works when your organization is structured to support and expect that, when there are other lines of communication open besides the formal. It does not work for an engineering department that is the equivalent of a dysfunctional family, and is all about blame, blame, blame. In my experience, QA became the whipping boy because what, they weren't smart enough to figure out that Widget A has been added to the product in the last 2 days? So didn't test it with Widget B and it crashes the product when you turn them both on? In that case, I started demanding that EVERYTHING be well documented, so then at least I could point to a document and say "not my fault". This was, of course, deleterious to the quality of the product and further eroded QA/Dev/IT relations. But I damn well wasn't going to sit through any more point-the-finger-of-blame meetings.