The career advice I've gotten since I entered the development workforce has generally fallen into two camps:
"Leave your job as soon as possible for a higher paying position - it's the best way to get a raise in this industry, and you've got to build out your resume"
"Find what you love to do, then do it (and then maybe start your own company or something). Find meaningful work".
I've been mulling these over lately, having gotten a surprise recommendation from a friend to work for his employer. I'll preface this by saying that I come from a background where my position was not in as high demand as technical roles are these days. Even though I've spent the last few years working in this industry, the wider tech world of recruiters, "rockstar ninja one-man-army brogrammers," buzzwords, branding, and intangible products is still a bizarre, mysterious, and often terrifying place to me.
Most emails that contain the words "I'm reaching out about a position at X company" are pretty easy to ignore - developers get a lot of these, and they're generally pretty spammy, impersonal, or just misdirected. My initial reaction was to archive this email before even opening it, but the fact that it was from a head of engineering (and not a recruiter) caught my attention. Out of curiosity, I opened it up - a friend and former co-worker who I respected had given me a personal recommendation and wanted me to join his team.
It felt nice to be recognized, and as I looked further into the role, the project they were hiring for was very similar to what I work on in my day to day. In addition, the company is huge and has amazing benefits, has a strong reputation as a force for social good, and is very highly rated by their current and former employees. My friend convinced me to talk to their head of engineering, who turned out to be very likable and shared a lot of my views on programming, team makeup, and personal growth.
After going through all this and talking to friends at other companies, I made my decision - I was going to interview for the position. With that decision came a sadness that took me by surprise. I chalked this up to anxiety about leaving my current team, joining a new team; sadness about leaving the folks I'd grown so close to over the past few years. I waffled back and forth, changing my mind every few days. I parroted the advice I'd been given and told myself that this was "simply the right career move;" that this was how I was going to advance to the next stage of my career. That sadness, however, lingered - a sense of loss, growing stronger before I'd even interviewed.
It took a reality check from a developer who's been in the field a lot longer than I have to shed some light on what I was feeling. I poured out my thoughts and emotions; I told him about all the excitement, trepidation, anxiety, and sadness I was feeling, all the benefits and perks of the new job I was considering. He asked me the question I hadn't asked myself that seems so obvious in retrospect - "Well, why do you want to leave?"
I responded that actually, I really didn't - I was happy in my role, felt valued, supported, and respected. Before this other company had reached out, I had been functioning under the idea that I wouldn't be leaving my job for at least a few more years. He helped me dig in further, and asked me if the benefits I was being offered - while generous - were something I wanted more than what I'd be leaving behind. He asked if I felt like my work was done here - not the work assigned to me, or what was expected of me, but the work I wanted to do. Did I feel it was complete?
In the long run, I decided that my work was not yet done.
The things I worked so hard to build and valued - my relationships, the respect of my co-workers, the product itself and the influence I have on it, the opportunities I have to mentor and be mentored, the ability to work at a company whose mission so closely aligns with my own - all of these things taken together are worth so much more to me than the name recognition and deeper pockets of a larger corporation.
TLDR; Some things are worth staying for.
If you made it this far, thank you! I would love to hear about your experiences with opportunity, and about how you assess that you're in the right (or wrong) workplace.
Top comments (37)
I've been with my current company for 10 years, and have no plans of leaving. Every once in a while I wonder what it would be like to switch, or look at other options, but I tend to come up with the following conclusions:
And so I really have no reasons to leave :D
That's awesome!! It's great to hear from someone who's been at a job they're happy with for years - it seems rare in the tech field; it's so relieving to hear that it happens :D
When I left my last job, I briefly felt guilt at leaving. But then I realized, I was leaving the company a better place than when I joined. I felt good about my contributions while I was there.
It's a good perspective, looking at the work you wanted to do, and felt good about accomplishing.
Great read Anna!
I went through something very similar recently. I had a friend reach out to me and ask that I interview for a position that sounded right up my alley, and offered very nice perks and benefits. My initial response to her was, "no thanks, I'm not ready to leave my job yet." We chatted about it again a few days later and she convinced me to interview for the job at the very least. I was, after all, under no obligation to accept any offer that they made me.
I approached the looming interview with the same pangs of sadness, and even guilt that you described. On interview day, I met a bunch of engineers and got along with them very well. The company ended up extending me a very generous offer and I suddenly found myself torn. I loved my current team and am pretty proud of the work my company does, but I realized that I was being under compensated while doing work on the part of our stack that I was less interested in than what was being offered to me.
I discussed this offer with my boss who really wanted to keep me and was more than happy to move me over to a team that suited my strengths and interests better, and bumped my compensation as well.
While the process was an emotional rollercoaster for me, I'm glad I went and interviewed. I learned a little about what other companies are doing, how they may value me, and gained some more experience at interviewing. It also benefits my current company, as I know just how valued I am by my team and I am far less likely to leave my position anytime soon!
Although, what you did was accept a counter-offer from your current employer, which can put you in a bad position in the future.
For example, if times are hard you'll probably find yourself first in the firing line. It can harbour bad feelings with your boss who may feel they've had their hand forced in increasing your compensation. Your employer may start to doubt your commitment or loyalty to the company. It's likely to shut the door on the company you applied to in the future.
There are quite a few reasons not to do this, make sure you think hard before accepting a counter.
Exactly! We should be afraid or be guilty to look around. When you know your prospects, it is much easier to ask for a career advance when the time comes. It is all about self-confidence and awareness in the end.
Thanks Paul! And that's so cool - I'm glad your boss was open to changing it up to keep you on-board. Sounds like the best of both worlds! :D Good stuff to think about 🤔
Great insights Anna.
I found myself in this position at the end of the year and decided to make a move. For me it was about going out and trying something new in the deep end again. I needed to gain another perspective on the world before pursuing even bigger goals.
In hindsight, this might have been possible staying at my previous company. But regardless I made the choice I made and I am happy to be trying new things again.
Thank you Anna! I appreciate your thoughts and I know the struggle. I wonder if it is something unique to this generation compared to a couple of decades ago when people worked at a single company for their entire lives.
But I do want to express one additional point to consider leaving and not staying too long. I found people who stayed too long in one company tend to have a narrow set of experiences especially in the area of processes and people development.
Being able to see the same coworkers you really like for years in and out is great for the social life but you never really get to see a different perspective. I think going to conferences or meet up groups is great for learning these different perspectives but it's never the same as being in the trenches of the differences.
Also the benefits of meeting new people and making new connections is very valuable. Some of the greatest ideas are a product of intersecting differences.
Those are some good points, too! I worry about that sometimes - and I agree that attending meetups/conferences/etc. is a good way to scope out the different perspectives that are out there and meet new folks. Good food for thought - thanks :)
Thank you! Money definitely isn't everything, and the cultural expectation/habit of techs "job-hopping" around is, frankly, really unhealthy. Yes, sure, sometimes one needs to leave, but if one is in a healthy company, developers should be encouraged to grow there instead of always looking for greener pastures.
I'm glad you decided to stay at your current job for all the right reasons.
Holy crap you literally described my exact experience from 2 months ago, including the 5 years in one company, having done my best by 3-4 years and getting to another company that made me feel accomplishment as I haven't felt in quite a long time.
My friend's hypothesis is that "good developers shouldn't stay in a single job for longer than 3 years, since after that you stop learning", maybe he's right...
It may sound ridiculously obvious but if you come to interview there is some unconscious/conscious reasoning behind this.
Pursuing with the idea either of camps (money vs do only what you love to) is hard. And neither of to be a good "job-hopper" or to build a long term progressive relationship with the same company is easy at all.
Yay! Great read Anna!
Thank you Ben! :D
Superb post. I changed my job a month back and I am twisting over the same question, because what is expected from me is completely different from what I was doing previously.
I left my previous job basically for good pay, but I had really worked hard at my job and was having good relationships with my team and managers, although they too promised me some things, but it was a long shot, and I just couldn’t risk it anymore.
After joining my new company I felt lot of overwhelmed in the first month, as these guys are asking wto lead team and also interact with a client, which I have never done so far.
The point I am trying to make is it completely depends on the situation you are in.
You're totally right - sometimes leaving is the best thing you can do for your happiness and your career! It sounds like you made your choice for good reasons.