I remember a time when a technical recruiter told me that tech people should change jobs every 18 to 24 months. Another recruiter told me that you shouldn't change jobs too often because it makes your resume look like "Swiss cheese." I disagreed at the time and I still disagree with both opinions. I think the time to change jobs is when you need to and as often as you need to. Some of us change jobs for more money, for more responsibility, for a physical relocation to a different city, for a promotion, or for a variety of personal reasons.
Just realize that two things are going to happen every time you change jobs: One, you'll be asked why you're changing jobs, and two, you'll have to explain your job history, whether you're guilty of job-hopping or staying in one place for a very long time. My opinion is that you should never apologize for changing jobs because there are so many reasons for doing so. If you don't want to explain a particular job move, it's perfectly acceptable to say, "I changed jobs for personal reasons."
You also might have to explain what appear to be multiple lateral moves. I've spoken with job interviewers who see lateral moves as slightly negative because they feel that changing jobs should come with some form of increasing responsibility. Having spent the better part of the last 25 or so years in various IT positions, I don't agree with that either. Some companies don't offer any real career ladders for technical people, so the only move options are lateral ones. In the end, you have to decide what's best for you and your significant others and don't allow yourself to suffer job intimidation from current or from future employers. Take control of your career and live your best life.
[ Free cheat sheet: IT job interview tips ]