On the Job
Although landing a new job can bring a sense of a high and often provides a financial boost that is greater than incremental on-the-job advancements, your time spent at a given company provides the greatest opportunity for advancing your career.
It is while you are on the job that you get the opportunity to provide incredible value and make a name for yourself. Although in these days of rapid career changes, it is in vogue to move up the ladder by changing jobs, when you do this too quickly, it can just as easily put the brakes on your career.
I will not try to give any hard-fast rule as to how long you should stay in a particular company, but consider changing employers carefully regardless of the time frame. Your current employer is where you are known and where you know the projects and people who make up the opportunities.