The 2-3 Year Question You Should Be Asking About Your Current Role

March 10, 2026

Career Growth

Most engineers wait too long to ask the question.

Not the question about whether to leave. That one gets asked plenty, usually at 2am after a bad performance review. The question worth asking is earlier and quieter: what am I actually getting out of being here right now?

I reviewed thousands of resumes at Facebook. The engineers who stood out weren’t necessarily the ones with the most impressive company names. They were the ones who could tell a coherent story about why they made the moves they made, and what they built along the way. The engineers who struggled to tell that story had something in common: they stayed places too long, kept their heads down, and hoped the work would speak for itself.

It doesn’t.

The 2-3 Year Signal

Here’s a pattern I saw constantly, and it held across levels.

Engineers in their first two years at a company are almost always growing. New codebase, new team dynamics, new domain. Even if the work isn’t glamorous, the learning is real. The growing pains are real. You’re building context, relationships, credibility.

Around year two, something shifts. The codebase feels familiar. You know the org chart. You’ve shipped a few things. The question is: what happens next?

For some engineers, year two is when things get interesting. They’ve built enough context to take on harder problems. They start having influence beyond their immediate team. Their scope expands. That’s the good outcome.

For a lot of engineers, year two is when the plateau starts. The work keeps coming, but the growth doesn’t. They’re executing the same class of problems they solved eighteen months ago. They’re comfortable. They’re good at their job. And they’re slowly becoming less competitive for the next level.

By year three, you can usually tell which path you’re on.

What Growth Actually Looks Like

This is where engineers often fool themselves. Staying busy isn’t the same as growing. Shipping features isn’t the same as expanding your scope.

The clearest sign you’re still growing: you’re being asked to solve problems you don’t yet know how to solve. There’s some discomfort. Some uncertainty. You’re operating slightly outside what’s easy for you.

The clearest sign you’ve plateaued: everything feels manageable. You’re confident, productive, and kind of bored. You could do this job in your sleep.

The boredom is the signal. Not proof you should leave immediately, but worth paying attention to.

At Facebook, the engineers who made it to Staff and beyond weren’t the ones who got comfortable and stayed comfortable. They were the ones who, as soon as a domain started feeling easy, went looking for the harder version of the problem or the adjacent problem they didn’t know how to solve yet.

That drive is learnable. But the environment has to support it. If you’re at a company where there are no harder problems available to you, or where the politics make it impossible to get access to them, that’s information.

What to Actually Ask Yourself

Every six months or so, it’s worth sitting with three questions:

What am I learning that I couldn’t have learned a year ago? Not “what new technology did I pick up” - that’s table stakes. What is genuinely expanding your capability? System design at scale? Managing ambiguity? Cross-functional influence? Technical depth in a domain you didn’t have before?

What’s my trajectory here, realistically? This one requires some honest assessment of the org. Is there a path to the next level that’s actually open? Not in theory, but in practice - are people getting promoted? Are the Staff/Principal roles filled with people who’ve been there for fifteen years and aren’t going anywhere? How long to leave job engineer decisions often come down to this more than anything else: not what’s possible, but what’s actually probable given the specific org you’re in.

Would a hiring manager at my target companies care about what I’m doing right now? This is the most clarifying question I know. When you’re eventually interviewing, you’ll be asked to talk about your recent work. If you’d be embarrassed to describe what you’ve been doing for the last year - if it’s maintenance work, legacy system babysitting, or nothing you could articulate as an achievement - that’s worth taking seriously.

The Tenure Math

How long to stay at a company as a software engineer is genuinely context-dependent, but some rough heuristics hold up.

Under eighteen months is almost always too short unless something went badly wrong. Not because there’s a formal rule, but because hiring managers notice. Two jobs in two years starts a conversation you’d rather not be having.

Two to four years is usually the sweet spot at a company where you’re growing. You’ve built something real. You can tell a clear story. You’re not so deep in the org culture that you can’t adapt to somewhere different.

Beyond four years, the question isn’t “should I think about this” - it’s “what’s specifically keeping me here.” If the answer is comp, that’s fine. If the answer is meaningful work and real growth, great. If the answer is inertia and fear of the process, that’s worth examining.

The career plateau engineer I saw most often on resumes wasn’t the one who’d only stayed two years somewhere. It was the one who’d stayed six or seven years, stopped growing at year three, and had four years of basically the same experience stacked on top of each other. That’s a hard resume to make compelling.

When to Actually Leave

Knowing you’re plateaued doesn’t mean you should send your resume out tomorrow. A few things worth checking first.

Have you actually tried to change your situation internally? Moved teams, raised your hand for harder projects, had a direct conversation with your manager about scope expansion? A lot of engineers convince themselves the opportunity isn’t there without ever asking directly. Sometimes it’s not there. But sometimes it is, and nobody told you because you didn’t ask.

Are you leaving toward something or away from something? Both can be valid, but running from a bad manager or a frustrating reorg into the first offer you get isn’t a strategy. Know what you’re optimizing for in the next role before you start talking to recruiters.

Is there a natural milestone coming up? Sometimes the timing matters. Finishing a major launch, hitting a vesting cliff, completing something you can speak to clearly in interviews. Leaving right before those things occasionally means leaving with a weaker story than you’d have if you waited three months.

But if you’ve checked those things and the answer is still “I’ve stopped growing and there’s nothing here that will change that” - trust that assessment. The job search is hard enough without also carrying the dead weight of a role that’s no longer doing anything for you.

The engineers I saw navigate this well weren’t the ones who agonized longest. They were the ones who asked the question honestly, early, and acted on what they found.


If you’re heading into the job market and want your resume to actually reflect the trajectory you’ve built, the SWE Resume System walks through exactly how to frame your work experience as a growth story, not just a list of jobs.

1:1 Coaching

Working through this right now?

30 minutes with someone who's been on the other side of the table at Meta - hiring committee, calibration rooms, thousands of interviews. No fluff, just honest feedback on your specific situation.

Book a 30-minute call - $25

Free resource

Get the free Engineer's Resume Preview

The OPA framework, F-pattern scanning, and the Master Resume approach - pulled from the full guide.