My longest stay at one job as been 2.5 years. By changing jobs, I get a lot more experience in a lot of different things. I've worked in five different markets:
I know people who've been at the same job for 6~7 years and they are totally getting paid way under market. A company might give you a 2~3% cost of living increase, or a $5k promotion every few years, but switching jobs let's you ask for $10k or more.
On the downside, I would NOT recommend anyone else change jobs almost yearly like I did. My job loyalty is shit and it's hard for me to take on other jobs when people are concerned I could just leave.
That being said, the good jobs with good pipeline engineering, tests and CI/CD flows allow people to flow in and out; quickly pick up things and move with fast/good deploys. Those shops are the best, but they are rare. They tend to not care as much weird resumes because they want to hire people who are innovative.
You're forgetting the options gain value as the company grows (due to your own hard work which is the whole point!)
You're awarded $100k but then it grows to $200k by the time you start cashing it in. When you switch company you get $100k again, not the $200k you threw away.
That's a fair point, we'd have to compare projected growth vs. expected salary of new job. Certainly the benefit of working at large tech companies or rocketships.
My experience with smaller startups, was that it's impossible to determine if the options would be worth $0 or $$$.
Consider it similar to diversifying your stock portfolio. By switching jobs every year, you're effectively hedging your portfolio. You're increasing your lottery chances of a unicorn exit, which is where the Big Money is.
I think an optimal time within a project in between 3 to 5 years, and the reason is to get deeper understanding of problems rather than surface. My YoY compensation growth is between 20% and 30% compounded.
It's the (usually 1-year) cliff that is more important when considering leaving. Once an engineer hits the RSU/bonus cliff, they're not losing _past_ benefits for leaving, only future benefits - and presumably the other job opportunity has better future benefits.
At least in finance (I realize HN is FAANG/SV focused), the signing bonus typically vests in 12-18 months. Finance also offers cash bonuses instead of RSUs. Finance also typically has paid leave built into the contract as a noncompete.
Typically the signing bonus vests over 12 months in tech, and the RSUs vest over 4 years. There are also usually cash bonuses in addition to the above.
YMMV depending on the company. Netflix is an obvious outlier in that they offer no RSUs and just pay very high salaries.
Which may or may not be worth anything. The rule of thumb is to value stock options at 0 for a reason. As opposed to RSUs, which are liquid upon vesting.
Not every company offers RSUs (at least outside US).
E.g. in my case only my third offered it, and I was like "What is that?", in my case it started vesting after 1 year (linear). So at that point one can think of looking for new job.
I think it's not uncommon for years 2 and 3 to be the highest earning years though, due to the 25% cliff, and to retention grants you get in years 1/2.
if you leave after the initial cliff you're only losing out on future RSU / options vesting, same as future salary you haven't yet earned. Unless your initial equity has gone up a lot in value you're not really leaving anything behind as presumably in the new company you'd be getting similar or higher value grants.