I would like to add a source or two of grumpiness.
To the "Work cross-functionally" section: it is possible to be injected into the creative process too early and too far. I may be creative, but I am not a replacement for a designer or graphics artist. I can sketch a wire frame, but I get really grumpy when someone says "now we want a screenshot of what it would look like in the real website."
Also a source of grumpiness is being expected to know everything about computers and be able to do/fix anything. As a programmer, if I say I can't administer a production level server, I hope that will be respected and someone qualified will be found to take care of the task.
I know there are really talented people with a wealth of cross domain knowledge and expertise, but for me - I'm a programmer, Jim, not a graphics artist or a system administrator.