Staying in the same company usually does not give a lot of TC boost. Is it a good idea to do some great, fast, impacting work in a company for 2-3 years (4 years max) and then switch job. Those who answer "No", please comment why do you think it won't be a great idea and a great career move? Please use poll below.
Don't move for TC. Get expertise in your field of work. Gain credible connections. Ppl will start recognising your work and then move. You never know, with the recommendations for technical expertise, you might get an offer which you can't refuse. In this case, if you get laid off, ppl will know that you are a great technical talent, and not as someone who used to run behind money.. It you think you are learning and adding domain skills in 2-3 years, then it's a different scenario.. You can make a move, but planning well in advance to move after 2-3 years irrespective of your learning, your liking for the kind of work, is what I am not for.
Hard and fast rules aren't so useful as a clear career plan for yourself. Experiment and figure out what's important to you.
It works a few times until you peak in salary.
Don't time box your career that way. It might work your favor in your early career but you might hit the asymptote a lot quicker due to various reasons. Many things in tech could take a long time to achieve something big. It could be hard to gain the expertise and acknowledgements from peers in 2-3 years of time. If you have found a team and project that you really like, try to see how far you can get without getting too bored. If you see yourself getting good amount of sponsorship from the leaders in your company/org, ride that wave and continue kicking ass. Those might pay back a lot more later in your career.
2-3 is too short. If you had said 4 to 5 I may have answered yes.
For the first few jobs, yes. After that it's not so clear.
What is not so clear? And why?
I think once you reach certain level (like GPM) it’s hard to hop around.