Are you seriously looking for job? The questions you need to ask yourself is for why do you need to change your job. Is it because of your boss, pay, promotion, not satisfied with the appraisal rating, got bored with same job or could be personal reasons (which noone has control).
First choose any one of the reasons and start analyzing the pros and cons of it. When you start thinking this you would sometime back off from what you thought. Most of the time we make decision in haste which is wrong. Sometimes we discuss this with friends which is wrong thing to do. You know what is your situation than anybody else. So you make the decision.
Let me go by points I described above
1) Quitting because of your boss - Mostly people want to leave their boss rather than company. In this case try your best to move to different departments/vertical citing some valid reason which would convince your boss or HR people. Sometimes it is hard to do so but things can work out if you keep pushing. The companies does not want to loose people.
2) Pay - This is very tricky one. You tend to jump for new job just because someone is paying more. But what normally these companies does it they pay you but they ensure that they bring you to the par of other employees whenever normalization happens. It may not be the case that they would reduce your salary but the hike what you would be getting is comparatively lower or nil. But if you keep switching the job you loose your value.
3) Promotion - This is more of the experience what you have and what you deserve after certain number of experience. For attaining this you need to be proactive and get more visibility in the organization. Also it depends on the relationship what you have with your boss. Refer "Fire your boss" post. If you do not get promotion try hard next time with different strategy and attack them. Sit with your manager and set the goals and work towards them. Start taking his job.
4) Rating - I somehow do not believe this system as it is more of what rating you got in your previous appraisal, onsite opportunity, got promotion recently, etc., The organizations somehow want to fit people into some category which they do it randomly. It is surprsing that not many organization thought some better strategy for this.
5) Boring job - You go tell your manager that I want to move of the project nobody would be willing to do it. So, how do you really come out. You should be smart enough to remove the dependency on you by doing KT to other new team members. Once the manager feels that then he should not have any problem to release you to different project
Mostly it is advisable to stick with one company. When you keep moving across organization you tend to be in the same position and your growth is less even though it looks faster to you. Whenever you get into a new organization you are new to them. So it is very difficult for you to get promotion for you. May be in next post I could talk about the problems laterals face in an organization.
Most of the people who are in top position would be the one who had grown with organization. May be your growth could be faster if your joining the startup company or moving to some newly started verticals. This is the best choice anyone would have.
So any decision think well and decide.
Tips: Have something in hold during the last moment of appraisal. This helps a lot to get better rating and promotion.
P.S. I wrote this post based on the IT field. May be it could differ for other industry