Ask HN: I am “trapped” in a senior engineering role, how can I escape?
I learned to build websites around 2011 when I was in my mid 20's. I had been working as a cleaner for some time and had come to realise I needed to escape that particular poverty trap. My father and grandfather were also cleaners for the majority of their working lives and often expressed regret before they passed. After some months self-learning I had amassed the courage to start applying for internships and junior jobs. No luck initially, though eventually I was able to begin a data entry job on a 12 month contract. I was finally able to sit at a desk and have a work assigned email address!
Half-way into my contract I organised a dozen or so meetups at Google Campus. There I met people who gave me the inspiration to continue applying for jobs. I was a fish out of water but it was a fantastic time. Finally, after another year or so of searching, I received an offer. I was able to jump in at the deep end had full project ownership over critical projects for several international brands. Over the next year I was able to fit in a wealth of experience and saw my career progress nicely as I jumped from project to project.
Eventually I was offered the chance to join a small business services company and lead development of financial systems there. I accepted, and I have been here for over half a decade now with some success. However, I now feel woefully under-experienced compared to my peers and sorely need mentorship.
I feel hopelessly trapped and constantly on the precipice of professional and personal catastrophe. I am not fit the for job market as a senior engineer, and I no longer have the financial means to take a step back into a less senior role at a company with a larger engineering team.
My scenario is certainly not unique but I have no peers to discuss this issue with so I am reaching out to HN for stern and dispassionate advice.
62 comments
[ 3.2 ms ] story [ 123 ms ] thread1) Level Up - pick a discipline and practice hard on your free time. Example: It could be becoming a cloud architect (pick aws or azure). There are tons of courses available for free on the company websites/youtube etc... learn theory -> practice -> repeat. Seek a mentor in that career path and keep your progress in check with her/him. There will come a time where you will feel confident to start applying for that position.
(2) Read good code from awesome contributors (open source repositories on Github).
(3) Persist (as you have been) - you had been amazing at switching from your earlier profession to software developer ( kudos to you!). write those good memories and experience and read them everytime you feel low.
(4) Make sure you are physically and mentally fit? Talk to your doctor. Sometime something as simple as proper nutrition / vitamin levels / exercise can do wonders to lift your mood and get you going.
I am no way at the level of being a mentor but reading your story wanted to share my two cents.
From your post it is a bit unclear what you mean by feeling under-experienced compared to your peers. Is it at technical level? Work ethic/principles? Understanding of the whole technology stack? Or perhaps process in your company?
While any of these topics can be tackled and improved independently, little would contribute so much as literature on:
- Clean methodology from Robert C. Martin. In particular, "Clean Coder" (ISBN-13 : 978-0137081073).
- Software craftsmanship. In particular "The software craftsman" (ISBN-13 : 978-0134052502).
These should give you, in my humble opinion, some fresh motivation and abstract overview on software development in general.
I wish you the best of luck in your endeavors!
Thanks for the kind words!
> From your post it is a bit unclear what you mean by feeling under-experienced compared to your peers. Is it at technical level? Work ethic/principles? Understanding of the whole technology stack? Or perhaps process in your company?
I feel the greatest trepidation around devops. Particularly in recent years I have noticed I am struggling to grasp the fundamental concepts of common tools. Kubernetes is a convenient example. Beyond k8s itself, I feel as if I'm drowning in the ecosystem which has grown around it.
At some point my mind seems to all lost all plasticity.
> These should give you, in my humble opinion, some fresh motivation and abstract overview on software development in general.
Absolutely! Both books gave me great encouragement very early in my career, I should read them again. Indeed, I will hopefully have a greater appreciation and better understanding of the topics covered now that I have more experience.
I stopped reading books on software around the time I started feeling inadequate in my position. They became more of a source of anxiety than inspiration. That must sound perverse!
I recently started reading "A Philosophy of Software Design" (978-1732102200). It has been a refreshing experience and I am hoping eases my back into such literature.
Everyone else is drowning in it too. There's a recent photo making the rounds on twitter showing the insanity of how many components are part of the Cloud Native Foundation's offerings.
My advice as someone with a slightly different situation, but similar feelings of inadequacy is this: Remember that the higher up you get, the more your knowledge about how businesses work, and how to deliver value with software matters. Those skills I feel like are gained and honed with experience, not with knowledge of ever shifting tech stacks.
That's interesting, it might mean that you're doing a really good job.
Ask me how I know...
If you don't mind sharing (and I understand if you don't want to), why not? Often when feeling stuck just having some spare cash so you 'could' escape can really help, even if you never use it.
The opposite side of that coin is that if I can cut my expenses by $50/month. That’s $1000 a year less that I need to make ends meet. Currently I make far above my local market income [1], but with my current skillset, this is the only job that I could get making that. I’m focusing over the next couple of years to pay off as much debt as possible to decrease my monthly expenses by paying off stuff and increase my (non existent) non retirement savings.
Every penny of my signing bonus (paid over 2 years) and RSUs are going toward “increasing net worth”. Just in case I have to get a job making local market salaries we will be okay.
[1]. This isn’t a humble brag. I’m 45 years old making about what a college grad 2-3 years out of school could make working at $BigTech.
Take steps internally to become more technical. This may include stepping back from some of the other roles, promulgating hack weeks, or even shifting departments. Explain to the owners that you want to be more technical.
You can also hire a career coach who can give you some other steps.
Interview. Prepping and having an interview will teach you more about how "fit" you are for a senior engineer than any other advice.
Be prepared to take some kind of financial hit. Start saving and cutting back now (if you can). This will make the transition easier.
I feel you, I've been in a similar place. You can leave.
"I no longer have the financial means to take a step back into a less senior role at a company with a larger engineering team"
I would argue you can't afford to stay where you are. If you're not happy and feel under-qualified (true or not), you'll never get promoted again. You're dooming your career ultimately, for a short-term tradeoff.
Now, that's not to say you should go more junior! Rather, you need to find your zone of genius. It sounds a bit cheesy, but I recommend you spend some time trying to figure out what you're both good at AND enjoy:
https://medium.com/the-mission/6-ways-to-uncover-your-person...
There are so many highly-paid/highly-rewarded roles in tech! I think you're underestimating your ability to find a job you both love and which will value you (financially and intrinsically).
To sum it up: you don't need mentorship, you just need a new job :) After 5 years, that feels insurmountable. It's not!
(My email is in my profile if you want to reach out and share more explicitly about your financials if you're willing to share numbers. I'm happy to help you figure out your options, and talk about comp! And obviously I'll keep everything confidential.)
Eh, sometimes it does help though. I agree with you that OP's situation isn't tenable in the long term, but switching jobs without figuring out if there's something else that's overlooked isn't a good idea in the long term either.
It's hard to know if that's the case from OP's description, but sometimes bad habits do have a deleterious effect on people's careers, and having an external party discuss their current situation helps with that.
Key point like others have already said: You're not on the precipice, though it sometimes feels that way!
Email is in my profile.
"Senior Developer" is a heavily diluted term at this point. You can generally only count on it meaning 3 years experience. It's effectively code for "did not wash out".
The problem here seems to be that you are in fact a Lead Engineer, not a Senior Engineer, which does have some pretty hefty expectations associated with it. You feel like the blind leading the blind.
If you want to go back to being 'just' a Senior engineer, then you need to do what the rest of us do when we are objectively or subjectively good at something that makes us uncomfortable or unhappy.
You lie by omission.
Downplay the leadership responsibilities of your position on your resume, so you look like someone who can be groomed into a lead role instead of expected to do it from Day 1. You'll get to backfill some of your experience along the way into that role, or they'll leave you alone.
It's generally awarded on your level of skill and responsibilities relative to your peers in the company, and not the industry per se.
I think some companies are starting to call all graduates at least 'senior'. Like how almost everyone at a bank is called a Vice President.
My first job before I even graduated was 'senior'. Of course I wasn't really senior in any regard.
Even though I proposed and started my own project inside the company, I would not call myself a senior engineer. Funnily enough, the value I added to the business may have been more than some of true seniors would have brought…
Your average data processing guy in a non-tech company was probably two corporate notches lower in 1990 as compared to 2020.
Ha, I recall a link to a blog post on the subject here on HN very recently. It certainly struck a cord with me.
> The problem here seems to be that you are in fact a Lead Engineer, not a Senior Engineer, which does have some pretty hefty expectations associated with it. You feel like the blind leading the blind.
This is totally correct. It's been more pronounced since we hired an engineer who had a short tenure at a FAANG. While I believe there is rough parity in how we model and build software, there's a huge gap in our understanding of devops and systems architecture. I am a painful bottle neck in that area and I am sure the engineer in question feels the same.
It would be best to first understand why this is bothering you. You've been there for 5+ years already so I guess if you weren't good, you wouldn't make it that long.
- Are you having problems talking with other engineers because they look down on you? Is it a recent thing?
- Or are you burned out by the current company/type of work? (normal after so many years)
- Or are you afraid you'll be unable to find a new job if the company lets you go?
My colleagues, across engineering and at executive level, are incredibly supportive and are quite flattering in their appraisal of my abilities. However, I do have a hard time accepting their kind words. More-so over the past 24 months.
> Or are you burned out by the current company/type of work? (normal after so many years)
I feel at home with this company and the work remains mostly satisfying. However, I do regret existing within a very small engineering team.
> Or are you afraid you'll be unable to find a new job if the company lets you go?
It is definitely on my mind that I could struggle in the job market. I have arranged two interviews this month, if only to receive a dispassionate appraisal of my standing.
I'm already the third person to pull this quote out of your post. I think you need to stop and look at this. You are saying "I am living beyond my means."
As long as you are living beyond your means, you are going to have to make compromises in your career. Look around outside. Any of us could be laid off three months from now if something doesn't change soon. As much as you need a career mentor right now, you need to look at how finances trap you too.
If what you say or what I say are true, this may be the last time in a good long while that you can refinance your loans at a lower rate. Limiting your discretionary spending, finding a new 'normal' that is sustainable.
I think that's right.
I took a significant pay cut a few years ago in an (unsuccessful) effort to safeguard my team from downsizing. Almost immediately following this change in financial situation my father became extremely ill and was either in hospital or at home requiring extensive care arrangements up until his death ten months ago. For a period of at least 12 months my income was considerably lower than the amount I had committed to family, and I was stupid enough to not ask for support.
I have since relocated my immediate family to a cheaper city and my salary has returned to its past peak but repayments for loans I had irresponsibly taken out during the aforementioned period have put me in a situation where it has taken one year to put aside two months worth of fixed cost expenses in the event I am without employment.
Sometimes life, for lack of a better term, just screws you real good.
Two years ago, my partner and I (through similar unplanned, horrific life-events) became homeless and without a vehicle.
Church soup kitchens, foodstamps, whole nine yards. We were stuck in a foreign US state, with no family, and not a penny to our name.
Long story short, eventually we clawed our way out of this situation.
For whatever it's worth, I just wanted to tell you that I (think) I know what you're going through, how awful and stress-inducing it is, and that you will have better days ahead.
Is it too late to ask people for a little help?
You should still consider the house refinance, if you aren't renting. You might be able to dip into your equity a bit and pay down your highest interest loan a bit faster. When I make extra payments I explain them to myself as taking X months off of the loan. It helps me and my family understand why we aren't spending it on improvements or a trip.
Sorry for the delay in responding. I wanted to say something useful and then life interrupted.
I’m going to die a little bit inside for suggesting this and I realize that it is an r/cscareerquestions cliche, but the easiest way going forward might be to “learn leetCode and work for a FAANG”. In other words study how to prepare for coding interview. Even if you are “down leveled” to a more junior position, you will probably make more at a big tech company or one of the 2nd tier (no judgement intended) tech companies than you do now.
I definitely went down a level in terms of title from “architect” at a small software company making close to the top of local salary to the second lowest level as a consultant in professional services (not complaining they leveled me correctedly) at $BigTech but ended up making a lot more money.
Are you willing to move? I got lucky that my job was always designed to be remote.
This is more of a question for other posters. Are most companies changing their policies to be fully remote?
I'd suggest trying to become a little more well rounded. Take some online Comp.Sci. courses if you feel like you're missing something in that area. Or even start a degree program while you're working. The stuff you think you don't know, go and tinker with that, ideally while getting paid ;) I'm willing to bet that in the specific areas you spent 5 years on you've got a lot of relevant experience.
Presumably you've built relationships and some human credit where you are that you can cash on here.
If you're looking to switch jobs your new employer is likely to match or offer you a better salary. Whether your title is "senior engineer" or whatnot. Given you work in a smaller company I wouldn't be surprised if a larger tech company pays higher salaries anyways. You can always carefully test the waters there... No shame in staying with the same company though if they're happy with you and you're happy with them...
Without knowing you or any of the specifics this sounds like a success story. Stay positive!
> My scenario is certainly not unique but I have no peers to discuss this issue with so I am reaching out to HN for stern and dispassionate advice.
I'm trying to connect to more people I can help and learn from. You can find more info here:
https://sonnet.io/posts/hi/
If any of the things mentioned in the post sound valuable to you—give me a shout! Worst case, we spend 10 minutes ranting but I am yet to see a conversation started with this post that I'd regret.
> I feel hopelessly trapped and constantly on the precipice of professional and personal catastrophe.
You describe how I felt when I reached my limit of stress, after years of burnout.
If you can, try to get some rest and be easier on yourself.
Coming from your background (having experienced and escaped poverty, being a self-taught engineer) makes it really easy for one to feel like this. Consider that you might not have the right perspective due to the stress. You might as well feel like this with decent savings in the bank, a three letter job title and a six-figure salary. Often it makes no difference.
Sometimes I envy my friends and colleagues who grew up feeling safe, because it's much easier for them to avoid making decisions driven by fear. Now, I live a fairly comfortable life, and _rationally_ I am aware of the irony of that statement, but it doesn't change how I feel.
If you're anything like me—consider speaking to a therapist. I'm not kidding, the only thing I regret is doing this so late.
Whatever other problems you have, this is the the one that you need to solve first. You need to learn how to manage finances - getting fired shouldn't be a catastrophe for someone in a role of lead (or senior) developer.
You just have to keep a strong network of former coworkers, managers, and local external recruiters.
With smaller firms, you run the risk of insufficient n-value to find great mentors (though you can be lucky.) In larger firms, esp with cross-functional roles, you increase your chance of finding great mentors.
FAANG seems like one obvious choice. I'm not sure what the top tier consultancies might be in 2020 but they will also be great choices. Good consulting firms are sociable, you work in intense situations where you quickly develop relationships, and there is lots of attrition and cross-pollination -- which means you constantly increase the n-value and your chances of meeting super-interesting people.
I started my career at Accenture (the consultancy.) Many of my informal mentors are still from Accenture. I've had the pleasure of seeing many progress through their careers. Some have rapidly ascended at other firms. Others more slowly, to the extent that the mentoring relationship has flipped. It has been 19yrs since I started there, 14yrs since I left there and the relationships still continue.
Happy to chat, contact info in my profile.
2) Do you have control over the tech stack of tools you work with? After a period of unemployment I got a dev job at a tiny company that allowed me to choose the tools and the framework I chose at the time (ExtJS) got me head hunted to join a much larger better-paying company six months later.
It's a huge relief for me to be able to speak on this issue. I'll continue to read through over the weekend and do my best to parse the feedback.