One downside of taking lower paying jobs is that employers often decide that you really are worth the lower salary. Programmers can end up doing system administration and desktop work. Perhaps that's not too bad in moderation, but it's very easy to get sucked into an on-call mode. Then again there may be exceptional people who can program in their heads as if they had an office with a door they can close, while some administrative assistant is nagging about corrupted email.