The pace of (some client) release cycles may not be for everyone. Also, a necessarily pragmatic approach to client management, sometimes leads to political decisions in programming development - something that some programmers may find frustrating. Collaborative culture can sometimes lead to ideas/initiatives getting bogged down in committee.