Naturally, that led me to trying to enumerate when I should leave a job.
I'm curious what metrics others here use to determine when it's time to move on. What makes you decide that it's time to quit your job?
An anecdote: I previously left a job to pursue what I thought would be a great opportunity to work with a “modern” and fun technology stack. However, my new manager turned out to be a totally manipulative jerk and my coworkers were rude and uncaring. I lasted about 9 months there (enduring stress and panic attacks like I’d never dealt with) before I reached out to my old boss and asked for my old job back, which is where I’ve been for the last 4 years and I’m very happy I made that decision.
So even if the stack is terrible, think about how other aspects of the job impact your mental health and stress levels. Can you live with a terrible stack (or maybe even think about ways to improve it) while working with good people? Does your compensation cover any downsides to working with that stack?
If you feel you’re underpaid, can’t stand the technology, and the relationships with your coworkers don’t balance either of those aspects out, then I think it’s time to pursue something else. But be warned that the grass isn’t always greener on the other side.
If you need logical reasons why, read about this study on how we all should make more change decisions:
https://www.inc.com/jessica-stillman/study-of-20000-coin-tos...
Anyways after five months of textbook perfect gitops, I'd had my third conversation with a human being at this company (Manager didn't do 1-1s, team didn't talk, there was no 'watercooler' chat. And this was in a physical office!). They said that if everyone was doing their jobs perfectly, that no one would really need to communicate outside of code commits.
Of course, this was extreme and I just picked the wrong place because I got strung up on a shiny tech stack. Something in the middle would have been better. I went back to my original job after five months, even with the crummy tech stack, because the people are social and it seems like they benefit from my presence.
I'm glad I did it - I learned a lot, at the cost of suffering some extreme loneliness, doubt, and then self-humiliation to get back to where I was before I started. I recommend anyone try it to at least get it out of their systems.
My job is the same, but it seems less bad. Is that a win?
But… I can tell you that there’s some weird recommendation right now that if you are the least bit unhappy, or have the slightest bit of FOMO, or have been slighted in the tiniest of ways… “that you must quit”.
Like… that people are being convinced there is no value in having a current job if it isn’t your dream job.
I just had a developer ghost us two weeks ago. Just not come in one day and only when repeatedly texted answered he is looking for other work. Besides the extremely unprofessional aspect, when pressed he had no answer for what we could do better except double his pay or why he wouldn’t look in his off time.
We paid him a good salary for his resume and work, but he has somehow convinced himself that he can make double somewhere else and still work 32 hours a week with an extremely relaxed working environment.
I just don’t get who is making these insane recommendations to people, or why anyone would listen.
I wish our former guy luck, but whatever job you plan on taking - please don’t fucking ghost your employer out of no where.
And then I ran into two folks from another company at an event, the discussion was going really well, and one of them, the boss, told me "Join us!" (I didn't show any intent to join them or to quit my current job).
That solved the problem for me. They seem to offer what I'm looking for. This is an opportunity that ran into me.
I wouldn't rely on such thing to happen, but maybe it can happen to you too?
ie its never a bad time
That being said, I interview engineers at a larger tech company. I view it as a negative for a candidate to have multiple short term stints (less than a year).
Of course when you're making this assessment, there are a bunch of unknowns about any potential new job, so it has to look significantly better to compensate for the risk you're taking (and for the overhead of switching).
If you are looking for growth and learning opportunities, and you aren't getting them, them find a new job and then leave. The job market for engineers is red hot, so that shouldn't be a concern. And, assuming you have a little bit of discretional money / savings, you should be fine on that front.
Just be aware, the grass isn't always greener and it's very hard to learn about an company from the outside, because culture can be very different team to team. So, if you move once, be prepared to have to move again, if need be.
For me, I'm still looking for growth and to take on more responsibilities (to grow as a leader). I've learned that if your boss isn't your champion, growth isn't going to come inline. So, it's probably time to leave. But, that's just me.
1) I had no where to go career wise. Vertical movement meant becoming a manager
2) My last couple of performance reviews felt like they were nitpicking to rank me lower. It felt like a cheap trick.
3) We went from being an R&D POC group to a production group. I enjoyed both, but the former is more fun
If you have a lot of saving you can sometimes risk leaving for a few months of travel, but give yourself plenty of time to get a job before savings runs out. (Different counties have different support for this so check to see how the rules work where you live )
If they are doing something illegal then if you don't quit when you discover it, that is because the FBI or equivalent asked you to stay on to gather evidence. Illegal covers harassment, though you shouldn't stay on if it is against you )
In general though don't risk not having income.
I'd quit if "things turned sour", that depends the mood, the interpersonal relationships, my own sense of feeling good about the situation at work.
I know some people are very worried about "falling behind", and they may be right, I don't know, I explore stuff that interests me, I do that either on my own time, or I find some excuse to do it at work (metaprogramming, refactoring, internal or personal tool building, are examples where you can do whatever you want).
If you're "already gone" and wondering when to look for a position truly outside of your current team / department / company / industry then the best time to start looking is... today. The sooner you start the sooner you'll begin gaining the most valuable resource possible in this scenario: more information! Knowing what kind of response your resume is getting, what roles are out there for you, what companies are interested in you, and what the pay looks like for those roles... all of that is very difficult to acquire absent an actual job search. The sooner you start looking, the sooner you'll have a feel for where your resume and interviewing skills could take you next. Then you can weigh if it's enough better than your current role to be worth it.
Other factors or metrics or motivators or whatever we might call them may include money (you mentioned), comfort, job security, work environment, travel time ...I can't think of any more right now. One big indicator might be when you wake up in the morning and you dread going into work. Chances are you will be happier somewhere else.
You're time and skills are valuable, that's why you get paid to do the job you do. It's up to you to find the line.
(edit) Also, you can try moving up in the company you are in? If you like the culture and environment and whatnot, and feel you are being under utilized, they may have something more demanding for you to do there.
There is just something missing. I feel like I’ve reached a peak and am not actively learning and growing. However, the last thing I want to do is go to a toxic environment that expects long hours and treats employees terribly.
As for when: You said your job pays decently well and you're working with good people. Don't underestimate the value of that! If you're not actively escaping a toxic situation, it's not a good idea to rush your job search. Take your time to find a known good working environment as your next step.
And the problem is, you don't get told in the interview, "Yeah, our management is insane". You usually find that out later. Same with toxic coworkers. So, is the tech stack bad enough to be worth rolling the dice?
But escaping a shitty stack may be a good idea. If you spend 7 years working in some retro cold fusion environment that will certainly look bad on the resume.
If the stack is uninspiring but pragmatic (let's say Oracle + java) then other factors should rank higher.
That way you have a feel for the waters, see what's available in terms of tech stack and team culture/vibe, with a much longer runway of looking around than when you are pushed off the cliff on a dead-end project, where you know it's the last straw. You are less stressed this way.
Also, something my brother told me years ago is, "if you're trying to decide between two things, try to pick the one that lets you do both."
As with the stock market people tend to sell too late when prices are falling and sell too early when prices are rising. Sounds like you are waiting to "call the bottom before selling".
Including salary, experience, connections, fun, whatever your priorities are.
And you’re the only one who can estimate the value right.
Research on psychology (loss aversion) suggests the same thing, AFAICT.
* Gain experience in new domains (e.g. go from web dev to backend distributed systems)
* Gain experience in a new role (tech lead, manager, etc.)
* Make more money
* Work at a place with more scale
* Work at a place that's more prestigious (FAANG or startup)
* Build more professional contacts
* Apply experience you already have for big impact
Any young engineer should seriously consider changing jobs every 2 years or so.
When you can't decide, answer is no - Naval Ravikant
I was working on a pretty nice project when this long-term client announced that for the next project, we would need to support an old version of the operating system. I had just gotten up to speed on the latest APIs and their statement meant, that my efforts would be a malinvestment.
I stopped working for them, and took on another long-term client.
That should, hopefully, make all kinds of life decision-making easier. You'll still need to make calculations and take risks, but it'll keep you on course.
«when you can't make the right thing happen, it's time to quit»
I think it's a general rule of thumb, albeit it should probably be interpreted according to one's specific situation.
You can't influence anything if you aren't valued in any way.
I've heard recently that when faced with indecision it can be helpful to brainstorm a bunch of different questions to ask oneself.
Have you bounced around a lot between different jobs throughout your career?
But really the answer is you should probably leave and sooner the better. I think this XKCD cartoon is pretty spot on: https://xkcd.com/1768/ In my experience it is pretty accurate and it is the answer you are looking for.
2. Some of the team is lousy but no one seems to be working on coaching/firing them
3. Management won't spend a dollar to save a dollar
As far as learning is concerned, you have various opportunities to learn outside of work as well, taking course or building project.
"Ok, I quit."