Ask HN: Burnt-out, directionless but want to turn it around
I've already wasted my entire teens and 20s, current 28 years old, working as a software engineer (Full-Stack) at a startup for ~4 years. I've been feeling like a loser and not good enough for this career even though I am a sole developer for Mobile and Web platforms at this startup in a very small team. I've put in countless hours of work every day (70-90 hrs), being on-call almost 24/7, sometimes for straight 7 days for months despite only getting paid on a salary basis on 40 hr work weeks; being a loner helps with working long hours. My salary also hasn't increased much, and feel like I'm severely underpaid based on the # of years of experience but I struggle with evaluating my value in the market to determine my worth. I assumed working hard would pay off but that hasn't been the case at all; I truly believe I've been doing the opposite of "Work Smart, Not Hard". I've been trying to get back to learning DS and Algos so I can apply to places but I struggle with LeetCode, which is making me feel like even a bigger loser for not being able to solve problems.
I'm stuck in a rut, wanting to better my skills and earn a good amount of money but unable to concentrate, riddled with brain fog, and unsure of my future. My self-confidence and self-esteem are taking a hit. I am terrible at networking, so I don't have others to reach out to for tips and advice, hence I'm turning to HN. I apologize if this isn't the place for a post like this. How can I turn my directionless life around and find satisfaction with my career?
520 comments
[ 6.5 ms ] story [ 465 ms ] threadFor me the first step in the right direction was an aggressive elimination diet. At some point I had become sensitive to a bunch of foods - but didn't realize the affect they were having on my life.
Good luck, friend.
At any rate, being gluten/dairy/sugar free really, really helped me. Nutrition is different for each person, but I have found this to be the single most helpful thing for managing the fog.
"One thing this has taught me is that a good story goes further in the twentysomething years than perhaps at any other time in life. College is done and résumés are fledgling, so the personal narrative is one of the few things currently under our control. As a twentysomething, life is still more about potential than proof. Those who can tell a good story about who they are and what they want leap over those who can’t.
"[...] But what is a good story? If the first step in establishing a professional identity is claiming our interests and talents, then the next step is claiming a story about our interests and talents, a narrative we can take with us to interviews and coffee dates. Whether you are a therapist or an interviewer, a story that balances complexity and cohesion is, frankly, diagnostic. Stories that sound too simple seem inexperienced and lacking. But stories that sound too complicated imply a sort of internal disorganization that employers simply don’t want."
The author includes other good advice, such as practical advice on why you shouldn't be afraid to lean on your network if you have the opportunity. In essence, the original poster can frame past experience with the startup as evidence as evidence that they would be a great fit for a position at another company.
I felt my most important CS class was learning about design patterns and code reusability in software (eg Gang of Four books). It took a few years for me to understand how to identify which patterns made sense to use vs using some pattern I found in a book because it looked cool. A required upper-level CS class on the Scheme language turned on some kind of mental switch that allowed me to understand how to code Javascript.
Another would be working around people who are smarter than you. If you're the smartest person in the room and you don't feel at the top of your element, then you're definitely going to feel stagnated. You might need to find another place to work at where you can work with people you feel can be good mentors.
Code reviews from other senior developers also help a lot as they may identify areas of improvement that you can learn from, but that requires you work with people who are smarter than you or have an area of expertise you do not.
Many popular OSS projects have articles going into a deep-dive of how their architecture works. For example, there's lots of material on how React.js works under the hood, with some people building a from-the-ground-up version demonstrating the basic features. Read such articles and explore those code samples.
If you're doing webdev, I don't think it's necessarily important to know the insides and outs of algorithms that you probably won't use in your line of work, but it's more about knowing that they exist and the situations in which it can be used for so you can add it to your mental toolbox. You might come across a problem where you recall reading about x technique or y algorithm. You don't remember the specific details, but at least you know it's there that you can then look up the implementation details for when the time comes.
Finally, the hours you are working are not healthy. You already sound burnt-out, and that's affecting your mental well-being, and possibly can have some long term health effects too if not dealt with. You need to find a way to cut your hours or not work if possible so you can reset yourself.
I had major burn-out two years ago where my body literally would not want to do any kind of work, and I ended up with severe health issues such as double vision, that required visits to several doctors and therapists. I had to do zero work for around half a year before I could do work again. My eyes could see text on a computer screen, but my brain would refuse to process it.
Everyone including myself that I've known in this industry suffer from some kind of imposter syndrome. I was in your position around your age, and fortunately was able to work with people smarter than me to learn from. It's never too late to learn to improve and find the right people to improve with, but you really gotta think about your health first and take care of that first.
Start sleeping early also. Gradually build up to sleeping before 10pm. A friend once told me people sometimes stay up late because they did not feel enough in-control over their day -- this idea stuck with me for a while (Quick googling now seems like the name for it is revenge procrastination).
And on the "rock star" comment, I wouldn't sweat it. Been in software 20 years now and wouldn't consider myself elite either. Plenty of opportunities out there for experienced and reliable programers that dont require you to cram for LeetCode or DS & Algos. Oh, and we all piece code together from multiple sources and there is no shame in that.
At age of 28, you should look at your life in a bigger picture. Instead of spending so much time on work, spend more time on your family and yourself.
Also, I want to add that the feeling of being a loser is exactly because you are not thinking about your life holistically. If you are really depressed, and feeling this way all the time, you need to talk to a mental health professional.
What you are feeling is normal. Take a look at the book Why we do What we do: Understanding Self-Motivation by Edward Deci for some insights. Relentlessly work on improving yourself to get "better" at various aspects of "Programming" (assuming that is what you want). Don't compare yourself to others, focus on incremental improvement everyday and set your own Goals/Criteria. Become Self-Driven and proceed at your own pace.
Drops of Water, if they fall continuously, can bore through Iron and Stone - Chinese Martial Arts Saying.
but if it helps you ....
Nope.
There is a reason i mentioned Deci's book; i highly recommend going through it. Peak: Secrets from the New Science of Expertise by Anders Ericsson is also relevant here.
2. You are worth more than you currently think you are. Internalize this, know this, that is key. "I am a sole developer for Mobile and Web platforms at this startup in a very small team" --> is a desirable skill in and of itself.
3. Stop working 80 hour weeks, stop working weekends. When the only thing you do has little/no reward, that is what causes burnout.
4. Fill your time with something else that you prioritize above work. Make it hard to find time to work. This both prevents slipping back to 80 hr weeks, and forces your brain to prioritize important things within your work life (like executing and finishing projects).
5. Networking is key. I don't have good advice here as this is a challenge for me also. But -- switch jobs often (every couple years), and be friendly and helpful (within reason) to your co-workers. They're now your network.
My background -- coding since I was 6, now 36 -- but I've shared many of the same feelings.
[1] I am assuming you have the basic financial stability to support this. My apologies if not.
definitely. I would highly recommend creating something. Woodwork, metalwork, sculpting, crochet... whatever.
It uses the brain in a completely different way. it creates new challenges and the satisfaction of physically manipulating the world is unequal in the digital world.
I got far more satisfaction from tying twist-ties around my grape vines today, than anything software I've done in the past month. My grape vines were droopy, now they're not. Tangible.
[1] https://news.ycombinator.com/item?id=31096994
I think people in OP's situation might benefit a sense of accomplishment/progress, and being recognized for that would help. But that's hard to get, especially external recognition. But a feeling of satisfaction/recalibration/grounding is definitely available thru hobbies that enable creation as suggested in the comment about woodwork, metalwork, sculpting, etc.
Tho I am not sure about how rich people vacation, ritualistic trips to the same "summer cabins" or "winter resorts".
1) They, as the sole developer, are managing to hold their startup together software-wise. That is a useful skill -- raw coding talent or not.
2) Since having recently found my way to a FAANG, I've found a surprising number of new hires are fresh college grads with about that much coding experience, and make more than I (with 30 years experience) ever had made before joining.
3) OP is self-described terrible at networking. I've personally found this my biggest barrier to finding well-paying jobs also.
4) Startups pay shit.
you dont know that. They could be failing the startup software-wise, and yet never know it!
The only way to find out, objectively, if you're good or not, is via multiple sources of independent verification in different companies.
Not saying that this is the case in this circumstance (I don’t know OP,) but the “you must be good because you lasted 4 years” heuristic doesn’t work that well outside of the US, or similar markets with at-will employment.
Also, for your mental health, you wouldn't want to go back and work at the company who just fired you. That's like getting back together with an ex you just got out of toxic relationship.
Mostly if they want to get rid of you they offer you a severance.
It is also much more complicated than I can explain in a single post. For example, you can be fired for working "slowly", but you can't be fired if you are doing your best - even if all your colleagues are faster workers. It mainly depends on if you are doing your best.
E.g. your colleagues are able to dish out 100 pizzas in a typical evening but you only manage to make 50, and your boss wants to fire you. You don't agree and sue him. The court now has to decide if you perform so badly because of something that is "inherent" - which is called a "personenbedingte Kündigung" or in English dismissal on grounds of personal capability, or if it is based on your conduct. A dismissal on grounds of personal capability is usually deemed unlawful, as long as you give your best, if you consistently only manage to make 50 pizzas it seems like it, right? However if you willfully (!) perform badly the dismissal is usually deemed lawful. But, if you e.g. suffer from rheumatism and you can't perform the way you used to but you want to perform better, you just can't anymore it gets a bit complicated: the employer has to make a prognosis on how and if you are able to someday perform better again or if you could do another job. So, usually it is cheaper to offer someone a severance in that case.
What someone in this range earns and their working conditions are going to be highly dependent on what they ask for and their self-esteem. Someone can probably lure them on the cheap or they could sneak into $200k job. I think a lot of the comments here about self-care and advocating for themselves are very helpful.
I will say horrible devs are far more than great ones. In my 15 years of experience I have seen far more mediocre or downright horrible than great ones.
Of the horrible devs that you can think of, how many of them would reach out and say that they're horrible (or make a post like this) vs how many of them think they're great/superstars? :)
Certainly makes me think of the Dunning-Kruger effect!
We're all stuck between Dunning-Kruger and the Impostor Syndrome, but we make it work.
I have seen eager but untalented persons build their skills and their portfolio over a couple years. To the point that had I been told this at the beginning, I would not have believed it. In a particular case, the person - at the time a low qualified technician - embarked at 26 to become an engineer, and by 38 is one of the most sought after engineers in his field.
Self confidence and willpower are factors that can overcome innate talent to a very large degree.
Honestly i think most devs err on the side of underestimating their value not overestimating it, particularly in the current market.
Of course, ymmv, but last time i switched jobs i ended up being pretty shocked how much more employers thought i was worth compared to what my (at the time) current job was paying me.
If a little bit of self delusion is what's required to break that cycle, then it's totally worth it.
Not that I think that's what's going on here. If you read between the lines of the OP it's my opinion that the main issues afflicting them are a poor self-image and bad networking skills. They're likely good enough technically but if they don't address the self talk they may never realize that.
in my case brain fog from burn-out lasted not months but 6-8 years with varying severity. depending on how long you stay burned out or ignore the burn-out that might be less. E.g if you're without a support network during burn-out it may not be as straight forward to pull yourself out. Burn out might be not because they worked so much and are now financially stable but because they had to work so much because they could never make ends meet until now.
If they can afford it they should take time off radically - get rid of everything that ties them down, be in nature for min 6 months (example: a long hike -> heading from A to B so there is a purpose in the simplicity). Or cover yourself in books (not compsci or tech literature but something radically different) and spend the other free time physically exercising.
There are pretty clear signs of depression in these sentences (why I would focus on lot of exercise or routines that also demand a healthy diet). Alternative is to see a quack and pop pills for the next few months and risk some addiction as a result, or at least deal with weaning yourself off them again.
Doing radically different things than $dayjob means totally forgetting about technology for a while and opening yourself up to other things. Person is 28 ffs which is hardly an age where you can't start on a radically different career path and end up excelling in it. Worst thing would be to carry on as a dev and turn yourself from a bad dev to a mediocre one and pay for this poor "gain" with burn-out, brain-fog, depression for several years.
People naturally "compare up" rather than "compare down". Sure OP is probably in the 1% wealthiest people in the world, or top 99.9999% of those who ever lived, but rather than be happy with that, he will compare himself to other computer programmers who are doing fantastically, and feel bad about himself.
Another factor here is probably the fact that OP's working conditions are highly exploitative, it appears that he is putting in far more work than necessary. He probably genuinely believes that hard work is rewarded and doesn't understand why he feels used up and spent. And it's probably because he is being used up and spent by his exploitative employer. So fair enough if you look around and see other developers who are not being used up, you might decide you want to live life with a measure of dignity, too.
Any rational actor in this circumstance would do the minimum work they could get away with, and do whatever they can to negotiate for better conditions. A first step might be to develop enough self esteem to be able to say "no" when asked to work unhealthy and unproductively long hours. But without knowing more of the specifics of how much leverage he has, it's hard to know if that is going to be met with instant reprisal or whether he will be able to gain the respect he deserves.
Of course, I am starting from the basic assumption that all human beings are worthy of some basic amount of respect, dignity, and freedom from exploitation.
Not to kill your point, but those two are dramatically under-valued and under-appreciated jobs in most societies around the world. Every time you use a toilet (other than the one in your home) which is hopefully clean, somebody had cleaned it recently. Imagine they hadn't. You'd have a terrible day. Every time you go grab a good Starbucks coffee. Maybe even sit down in a comfy sofa to be able to enjoy it. Imagine the barista had screwed it up.
Both experiences make a huge difference in people's lives. Hundreds if not thousands a day. Every day. But they are paid crap and talked about in the way you just did. Compare that to a coder churning away meaningless features in some meaningless app. Would I care if the coder wouldn't show up to work for the next 4 weeks with nobody stepping in their place? No. That answer is decisively different for the toilet cleaner and the barista.
And yet, for the past two years, just about every store you'll ever go to has a 'Sorry, we're shortstaffed' sign in the window.
The value is not what we _think_ of it, but what we're willing to pay for it.
The pay is usually indicative of employer's ability to find a person with the necessary skillset to do the job and not some abstract "importance to society" value that the job has.
As a German I wonder what the people where thinking programming VWs TDI system to activate emission controls only during testing, was it worth it? Polluting the environment and peoples lungs for a bit of money? It's not like dev jobs are a rarity in Germany. And yes I'm judgemental about this. And don't get me started on the things that are legal and still a detriment to society.
Ben Franklin called money 'coined liberty'; in this day and age it is more 'coined status'. It is a scaling mechanism. Reputation only works if people know you, there are simply too many people to know, so we've replaced reputation with money.
However, in the context of this discussion thread, the word 'value' can be interpreted as "paycheck". Your and my diversions are that, diversions.
Since what you can negotiate is in part related to what value you can actually provide, then what you can negotiate is ultimately guided by reality, if not determined by it. Of course negotiation matters. In business as well as in love. And it matters in part because we cannot read minds and cannot see everything that you can do. So communication must fill that gap. Imperfectly.
I'd bet my money on the first producing more trouble. The latter one is not centered around coding alone, so they are more flexible.
Sorry for being so direct, but this culture of trying to substitute logic for compassion really pervades the IT scene in a rather toxic way.
I don't know, maybe setting unrealistic expectations and telling everyone they are worth more which implies they are doing something wrong to not get that worth out isn't doing them favours either in the long run.
You don't need data on every single developer in the world to know that not all of them are 'worth more'.
>learn interpersonal skills - objectivity isn't everything.
The whole thinking that objectivity precludes interpersonal skills and that if you attempt to be objective you are what? a cold robot? is absurd.
You are not a loser, and you are not alone. Many people struggle with finding fulfillment in their careers. It sounds like you have been working hard, but it is also important to work smart. Try to focus on your goals and what you want to achieve. Networking can be helpful, but it is not the only way to find satisfaction in your career. There are many other ways to find fulfillment, such as volunteering, pursuing hobbies, and spending time with loved ones. Don't be afraid to reach out to others for help and advice. There are many people who are willing to help and support you.
1. He's working much longer hours than he's paid for, probably for pie-in-the-sky options that 95% chance won't amount to a true pay-off for his hustle
2. He doesn't seem to have advocated for himself or his own happiness, he's going along with this burnout inducing program
3. He's clearly modest -- he's been coding for ~10 years and he's in his mid-20's. That is a highly employable situation in our field, he could easily get another job IMO.
This based solely on the fact they’re aware of and posting on HN.
All the mediocre people I know aren’t interested enough to keep reading -much less comment on- this website.
someone should ask a few HN questions instead of leetcode. "who is dang"? "did you read the latest from the lego sorter guy ?"
if this is true (not arguing either way), then he is almost surely undervaluing himself since most of those mediocre or horrible devs don’t work 80 hour weeks or are regularly on call.
I just understood that.
That is an interesting method.
HN is the social network for software engineers. Instead of teenage girls staring at a perfect looking tiktok influencer and feeling fat shamed, we are a bunch of typing idiots thinking we aren't good enough to be employed. Imposter syndrome is everywhere here.
Look. 99% people here are just pounding out CRUD apps too -- don't be so hard on yourself. There is a maddening amount of over engineering going on (AKA I am soo hot - look at me in Miami!).
This is a very important point. Slogging without any feeling of accomplishment/returns will burn you out faster.
For me this is by far the hardest part. (But also I'm the type to just idly waste time instead of filling it with work.) For most of my life, coding was by far my favorite thing to do; I could do it for hours without noticing the time passing. But now it feels like work and I haven't found anything that remotely fills the hole in its place.
On a related note, this "gap in resume" thing needs to stop being a thing at all. I don't know when it became a thing, but it feels distinctively like forcing a wage slave class to keep their head down and continue wageslaving.
Why would an employer care whether I took time off to pursue other things otherwise?
These are all very different extended gaps. The first two should be fine - if someone's skills have atrophied than that's another issue (but nothing a good interview or probation period won't pick up on if it's actually even a problem). The second one might be fine or a problem - and I can see why employers would be wary.
Absolutely agree.
When I interview people I couldn't care less about any gaps in their resume, we're going to sit down, talk about tech, what you've done and what we need, etc. If there's a match in skills, needs, personality and expectations then that's it, anything else are invisible cargo-cult walls
Also working doesn't necessarily equal keeping up with technology. If i'm maintaining some legacy system, I wont have a gap but i might've not learnt anything new for years.
It's a broad statement, so keep it in context. Examples: Think, Apple has had the iPhone out since 2008 now. Working there on the iPhone 16 HW / SW specs or the M3 processor design may well be cutting-edge stuff, but working there as SRE for the App Store infrastructure is likely "an SRE job with some legacy in it". And working on their developer infrastructure, devtools / CI etc, very very likely is full of "proprietary dead ends" (i.e. tech noone outside the AAPL orchard will use or have use for). A Wall Street bank, once above a certain size, is going to adopt tech more slowly - much of their proprietary software stack is likely still in C++ / Java where a five-year-old small trading house may have written all that in Rust.
I've had jobs at such "S&P 500" corporates in the past; I wouldn't say "I learned nothing" - I learned how to navigate companies. Call it "coping strategies" if you like. It still helps to get stuff done knowing how-to-do-it on a procedural level - or via human-interaction. Tech-wise ... regretted some of these. My experience, though, is that one can "come back".
"Just" keep the ambition under control that you need to know everything, and need to be able to do everything. Today's "tech stacks" have so many parts in it that are out of your control and that you cannot inspect - the sheer will to "rule them all" will burn you. It's easier said then done, but: know your limits. Everyone has them. You'll recognize the "boasters" soon enough, those that claim they can rule it all.
The fact is that the IT world does not progress in a linear direction. It's like a puddle that grows into multiple directions. But it is still covering most of the same spots as before. Banks still use COBOL. High-performance code is still in C or C++ with assembler (but that "C" may run on a GPU), etc.
I've had all sorts of gaps in my career. 6 months, 1 year and more, to explore different domains. I'm in computer graphics/front end, pretty fast paced.
Nobody ever asked.
Please, never feel guilty about taking a single month off. If your body needs rest, you need to listen to it.
I think the proper answer is "I just took some time off between jobs." Sounds fine, sounds like you took advantage of an opportunity, and doesn't sound like you're somebody that had a hard time finding a job.
Not every industry is like this, but tech has little reason to care. If anything, employees with more life experience are a benefit to the employer.
You are kidding yourself.
The Boomers might.
Thankfully, one of the best things to come out of the recent progressive movements is that work is the be all, end all. There's more to life. More and more companies are being run and staffed by people who understand this.
I think that at least in tech it was only ever a thing in companies that didn't know better.
I mean, I throughout my career I was fired multiple times and at least twice that resulted in a 3-month gap, only one of them being voluntarily that long.
I now take them on purpose and collected a total of five over the course of 10+ years.
I don't remember anyone ever even touching the subject - perhaps there's something about the date format I'm using in my CV (MM-YYYY - MM-YYYY/present).
In any case my experience is that companies with such ridiculous criteria end up hiring contractors to fill their gaps - this time in their workforce.
Contractors, naturally, don't go through nearly the same recruitment process and yet they manage to do the same job and do it well - those who don't are promplty fired.
Took probably double the amount of time to get a job. I finally asked someone why they cared? They said it looks like others were passing me up for some reason and they did not want to pick someone up who everyone else was passing up.
Hiring in many ways is a guess if you can stand to work with someone or not. Being in any way undesirable hurts you.
What employers are concerned about is people problems and problem people. Dealing with problem employees is very unpleasant and a huge time sink. Since difficult people tend to have difficulty staying employed, time gaps and short engagements on resumes are a somewhat reasonable heuristic. When there are more applicants than you can interview, you have to prioritize the list somehow.
This, although it seems not everyone got the memo, hence a recent conversation I had:
https://news.ycombinator.com/item?id=31528057
> Being in any way undesirable hurts you.
Does having gaps make you so though? I'd say not necessarily. I mean, isn't there a workforce shortage at the moment?
Personally, I don't care. I just checked a recent candidate of mine and he... didn't put months in the start/end dates of his projects. If there's a gap there, I wouldn't even know.
The couple of jobs I have had which were less than one year spanned a year-end so it never looked odd.
When I am reviewing incoming resumes small gaps never bother me. Ocassionally I have seen multi-year gaps on interesting resumes and made enquires which always turned out to be completely legitimate career breaks and never lead to us not making offers.
Yale
That's very impressive, you're hired.
Thanks! I really need this yob!
This heuristic would miss people who lie about "consulting" during the time they were in jail and would incorrectly catch someone who was falsely accused and then exonerated.
https://news.ycombinator.com/item?id=31548548 was great too. You should turn these into TikToks or do standup or something.
This comment makes me sad. It seems illegal biases in hiring and management practices are rampant. Worker protections seem to be a joke when they're blatantly ignored.
Like the sibling comment, I find this very sad.
Perform drug tests if you're worried.
Otherwise it's none of your business.
This question applies to all employees. You don't, because it's none of your business if it doesn't affect their work performance. It is entirely possible, and probably likely that some your current employees use drugs. And almost 100% sure that some of them use alcohol, which is stronger and more problematic than many illicit substances. Many companies even throw parties where they give out free booze to the employees! How's that for a double standard?
People have always used drugs, and always will. Pretending to care about substance abuse only when you come across someone who openly admits their history is insane. You are treating the honest people worse than the people who hide their problems from you.
That's skirting uncomfortably close to discriminating based on medical history or a disability, which may be illegal depending on where the employer is located. Cancer survivors have a much higher chance of recurrence than others do of developing cancer for the first time, but most would probably balk at denying a job to someone whose cancer was in remission because there's a higher chance they'd need extended medical leave in the future.
Every hire is full of risks. Nobody knows whether they'll get into a car crash, get cancer, or get shot, or become a substance abuser. Whether they admit their medical history or not. That's because they are human beings. Humans are inherently risky. If you want to eliminate risk, then hiring humans is not for you.
All you do by punishing people who are honest about their history, is to encourage even more people to lie in interviews. Those people are only the tip of the iceberg, and a significant number of people companies hire already have such history but they just keep their mouths shut.
(Silence... )
-- won't that seem suspicious, even if the interviewer can't ask:
"Oh so you had a drugs and substances career break?"
If a criminal record is an insurmountable hurdle for a specific role, then it would come up in a background check (which would almost certainly be a requirement for such a job), and the job posting should be explicit about the required clean criminal history. A gap in someone's resume is a pretty worthless signal for whether they've ever been incarcerated.
Agree. Things were different in the 90s, think peak crime and crime bill. Also, everything wasn't categorized as a felony back then, it seems like felony was limited to much more severe crimes (except drugs crimes), unlike today.
>it would come up in a background check (which would almost certainly be a requirement for such a job)
It would, but background checks cost money and I'm guessing it was a pre-screen method to save. I'm not defending it, I'm just repeating what I was told back then.
>A gap in someone's resume is a pretty worthless signal for whether they've ever been incarcerated.
Unfortunately, people have been doing stupid filters on hiring for decades. It's not a new phenomenon.
Overall, for me hiring, I never considered a resume gap to be a problem, and think that employers who do are literally stupid (sadly, nothing prevents such stupidity). At most, it is a potentially interesting interlude for a person's life and career - what did they do with it?
For OP, I'd definitely recommend rearranging your work situation so you are not so exploited and pressured. Either get your employer to hire more people so you can work on something other than a constant firefighting basis, or leave. It very much looks like the main reason you have not yet "come up with a solution from scratch of my own and provide any value" is because you aren't given a moment to breathe (and your assessment of not adding value is wrong - you are obviously adding value, it's just that you can see some left on the table).
Seems what you need, at almost any cost, is to get perspective.
Good that you see it and here's to your future success!
If I ever take a multi-year break I'll just take occasional freelance clients and list it as "consulting".
Burnout is a known problem in our profession, I approach people with open mind, I experienced burnout myself and taking time off is desirable for mental health.
Firstly: Do you think every comment should be positive? Secondly, how is my comment negative enough for you to make that reply? I asked a question and gave (honest) feedback on my reading of the article/post.
> The list is obviously not for you
But it IS on HN which I read. HN is a public forum that anyone can join and make comments. It is fair game to give feedback on articles.
> this reflex where one needs to be so angry and vocal about something so benign (and useful) is what makes me question what have we done to ourselves as a society.
The usefulness of the advice is completely subjective and the main point of the comment section is to discuss that. Would you rather comments like "love this", "+1", "all great advice!". That seems completely useless to me.
Your questioning of society based on my question and feedback seems outrageously ridiculous to me.
Ironically, a quick look shows you have multiple grey posts and are not a positive commenter yourself. Maybe your reply was actually some self reflection.
Would be a red flag for me, if someone boasted about secret NDA work, which did not exist at all. And this can show up very quickly with some questions.
If a company receives 200 applications and 50 of them have flawless resumes, even something as small as a couple unexplained gaps could be enough to move you below the cutoff for getting a call back.
I think the thing that confuses people about gaps is that it doesn’t make it impossible to get any job. It just raises questions for interviewers who have a lot of resumes to sort through.
If you’ve only ever applied to jobs in less competitive markets or times, it may not have mattered at all yet. There are actually a lot of small hiring quirks that an entire generation of engineers hasn’t encountered yet because we’ve been in a decade long bull run.
I think you can better make sense of it as a vestigial organ of hiring process from before background checks were widespread, no "wageslavery" explanation needed.
Many (questionable) reasons, but among other things, it's a convenient way to exclude women trying to return to the workforce after they took time off to have kids, without overtly appearing to discriminate.
I agree, and if they do?
I'm not telling you to lie on your resume, but...have a good story to tell about what you during that time off. If that doesn't cut it, you're probably not dealing with a company with a good culture.
It's not that. Having a gap in your resume might mean that the candidate is trying to hide something. E.g. a job where candidate was fired and doesn't want to be asked to provide references.
If you took a gap to pursue other things, put whatever this was on your CV, don't just leave a gap. If it was something interesting, it might even put you in front of other candidates for some employers.
Taking time off to raise children isn’t a big deal at most companies (at any big company, you’re more likely to find more parents than non-parents in hiring manager positions). Even gaps for things like travel aren’t really an issue as long as the candidate explains it.
You have to consider that hiring managers aren’t only seeing resumes of flawless candidates. There are a lot of candidates out there with things like anger issues, chronic performance issues, interpersonal issues, and so on that have already been removed from other companies for these reasons. It’s difficult to deduce it from a resume alone but small signals like unexplained gaps can be a hint that you need to dig deeper.
that can also lead to many false positives, IMO. personal example, in my first job out of college my manager and i did not get along. i assume they wanted to fire me and began to build a case against me, emailing HR every morning i was not at my desk by 8:30 AM. i was naïve and the HR rep basically told me i should quit because my manager had "evidence". so i did, and it took a LONG time to find another job because of the "Scarlett Letter".
it then becomes a self fulfilling prophecy since the longer you're without a job the more suspicious it becomes. it all just feels very classically corporate to me, from a time when people stayed in one city/town for a long time and if you had a gap in the resume it was automatically detrimental to you because all the good people already have jobs.
I'm terrified of all this, since I started using a wheelchair. a friend told me she did 10 interviews with no offers, when they were in person, but got a great offer when she interviewed on Zoom. my current job values me a lot, but do I stay there forever? what if I try to switch jobs and nobody wants to hire the cripple?
I will absolutely not ever be convinced that I should have to account all of my life to a company I'm considering joining.
I may explain a certain gap if I feel like it. But if I feel I'm being put into a situation where I'm expected to explain it, this isn't a company I would like to work with.
If I receive 200 resumes and 30% of them are picture perfect - Sorry, I can’t interview or even screen everyone. The resume with unexplained gaps isn’t getting sorted into the top of the pile simply because I have to be aggressive with filtering.
On the other hand, if I’m hiring for a difficult position at a less popular company and I’m only getting 1 or 2 okay resumes per week, I’ll take the time to screen resumes with gaps as long as everything else looks fine.
You have to understand that a lot of hiring managers simply couldn’t screen/interview everyone even if they wanted to. For those jobs, having unexplained gaps in an otherwise average resume could be the negative signal that moves you slightly down bellow the threshold.
But for a lot of average jobs: No, it doesn’t actually matter that much.
No one has an actual number, but I expect it's A LOT.
The best thing folks can do is to NOT rely on just dropping their resumes into some anonymous web-based corporate application system. Instead, it's much better to network and to use your contacts (previous co-workers, folks you know, family, friends-- anyone really) to get get leads and bypass HR drones entirely or as much as possible.
The other thing that, IMHO, works really well is to specialize. Positioning oneself for "hot" in-demand jobs, ironically, just ends up putting people into an ocean of competition where each job has hundreds of equally qualified people going after it. That's awesome for employers who can then be absurdly picky, but it's terrible for candidates.
The way many technical candidates shoot themselves in the foot before even getting started is they fail to network and fail to specialize (or target their search properly). They're often honest to a fault and go up against competition that is unscrupulous. There's a reason why so many candidates completely flunk fizzbuzz.
Lots of C# and Haskell wonks around here, but none of them want to dirty their fingers doing maintenance work, particularly maintenance work on software written in no-longer-fashionable languages before they were born.
First, what software company hiring developers is in this position?
Second, isn't the definition of "picture perfect resume" the exact thing the GP is arguing to change?
Third, a month is not a unexplained gap; resumes (even LinkedIn) typically aren't fined-grained below the month level with dates, so there's nothing to hide or explain.
Honestly the whole thread seems mad to even suggest such a thing is true. "Gaps" start at about 1 year and I'm dubious anyone is using it as a filter before it's 2-3 years (ie when you might claim skills would start to degrade if unused).
Nobody should have to explain a gap between jobs upfront - they could be gardening, on pilgrimage or attending family - Or simply take advantage of between jobs to take a well earned break. There are a million none of your business reasons.
There should be no expectation for this information, until you engage with them. And even then...
Stuff like this (at least in the US) is supposed to be legally protected, but in practice it's a little useless to bar employers from, say, asking about your medical history if they can push yourself to explain a gap in your resume that was exacerbated by a mental health condition, or caused because some illness or accident or left you physically unable to work. (See also: candidates who have kids)
It's a dumb loophole that enables hiring discrimination -- because you can still fish for information that's illegal to ask about specifically, just by falling back to a catch-all question that's bound to turn up much of the same information a meaningful chunk of the time.
I have 4 gaps on my resume (1 failed startup, 1 burnout episode, 1 travel the world & 1 family care). My resume is a total mess of jobs in sales, growth & product. And yet the best organisations I ever worked for, always tried to understand the context before judging.
Incidentally I like to also tell people who are a bit behind the times that these days it seems like having visible tattoos is a net benefit for your employability. Everyone likes hiring interesting people who aren't mindless drones. Tattoos, piercings, quirky style .. all serves as evidence of that. At least on the west coast!
(A corporate wageslave could run away and integrate somewhere else; better to brand them with distinctive, permanent markers.)
Obviously tattoo/no tattoo is a bad, low-signal way to size someone up, just pointing out the signal itself has phase-inverted from say 20 years ago.
Let me start off saying I dont agree with this logical fallacy. So don't downvote me if you don't like that some employers think this way.
I think many interviewers/managers worry that a gap in resume is actually you got fired and then spent months looking for a new role (possibly this one). Or that you started at a company and then left within a month or two.
I guess the belief is an employee who gets fired ought to be red lettered and too big a risk to employ ever again? (fallacy)
Now starting at a company and leaving early could be a red flag on the employee in that they agreed to do something and then didnt follow through. But it could just as easily be that the company really misrepresented themselves during the interviewing process and lo and behold it's actually a shit show once you start working for them.
It's the same reason so many arbitrary things go from "this is absolutely necessary" to "this would be nice" to "oh we can remove that please don't walk away!" depending on the state of the job market. Interviewers are surprisingly flexible when they are no longer the ones holding the reins.
Which means that said employee could walk away from the company if he's dissatisfied. The company would rather have someone who needs the paycheck— he'll put up with more.
OP, if your financial position allows it, consider taking as much as six months off. I don't know what part of the world you are, but a big change in geography and culture and people around you will probably help break your rut. Consider taking a long trip out to somewhere affordable and sunny and give yourself permission to do nothing but walk around.
Email is my profile bio if you want tips on how to plan something like this.
Because you might feel like doing so again, or because there’s the possibility the time off wasn‘t voluntary. Not saying employers should think like that, but there’s a portion that does.
If someone is asking questions about a resume gap (implying it's important)... LEAVE THE INTERVIEW.
It will stop being a thing when people realize it's none of anyone's business except yours.
The push for arbitrary obedience is part of the same problem.
You will find companies that aren't run by psychopaths but you must vote with your feet. Discourage yourself and others from putting up with this shabby behavior.
I really recommend the volunteering, especially if in a field unrelated to your career and more aligned with your values.
Not only is it a great way to get to know people, it can really give you a better sense of what skills you can bring. You will make even more of an impact if you do bring a different perspective and skillset to others who normally volunteer.
For me, personally, volunteering in a small association has had a life-changing impact to me in a month.
- month 1 : feeling lost
- month 2 : feeling totally lost
- month 3 : starting doing things for fun, with the culpability of not working
- month 4 : starting to get bored... Staying home alone starts to be boring (it means your health improve 'cos you start wanting to do something again)
- month 5 : realizing that I can't repeat the last 10 years of my life. Som things must change
- month 6 : my guts tell me "you should go back to school"
- month 7 : I understand that listening to my guts is the only meaningful thing I can do
- month 8 : ok, going back to school.
Now I was fortunate enough to have enough money (and a powerful social system) to be able to do it. I understand I am very lucky.
And data sciences are super cool when you come from computer sciences. I definitely feel I'm learning something totally new. Data sciences is very far away from computers when you think about it...
On my side, it'll mean start anew in an work environment I like, doing stuff where there's less customer management involved (so, for my personality, that means much less stress). I like customer relationship though, but not when it means: "tell the very unhappy customers that the crappy solution we sold them is the one they love (and explain that this budget overrun is under control)". I much prefer the relationship when it is : "ok customer, I think I understand your needs, let's imagine a solution together".
Tell the company that it's more than a one person job (should be obvious by the comments). Then pitch the idea of you being the lead and selecting the new team. You should be able to reduce your hours and get a raise. If not, then the comment above should work well.
You need to find a way to get out of your current job. Clearly, if your job relies on you so much, you're not incompetent. Find another job at your skill level that respects your work-life balance, and a 40hr week means a 40hr week.
I realise this is easier said than done, but that is what I would start with if I were in your position.
All this to say there’s so much life ahead of you and it can take you a million places if you let it.
I’m with the Romans, 18 might be the age we let you drink but you shouldn't consider yourself an adult until at least 25. If you're 28 and worried you've wasted anything... Wow.. you're literally only in your third year of adulthood.
At 25 I chose to quit a job to focus on my degree, finally a solid adult risk-decision. At 28 I had graduated and been staying on to publish a paper based on my thesis, and I disproved my thesis, and I made the sober decision to quit that career and pursue a different one—and to uproot my life to pursue the girl who is now my wife. You can say that the first decision was undone by the second I guess, but I still feel proud of it, just how I made the decision and followed through and took a risk and made ends meet. I just entered my 13th year of adulthood and I am still learning so much, haha, I can't imagine now thinking “It’s all over!“ at only year 3.
Body -- diet, exercise, rest
Mind -- useful intellectual inputs and positive relationships; a financial budget
Soul -- community of faith
Attend to these three dimensions of life deliberately for maximal joy.
You write well. Programming is an exercise in communication. You are building a structure that at the very least has to be understood by a machine, but moreover has to be understood by you and anyone else who comes to the codebase. Good programmers create readable code just as good writers author readable books.
As with any kind of writing, reading is a good way to learn. An excellent way to do this is to configure your computer to let you jump into the source code of any library you are using. If you frequently use a library, being able to press one button on your keyboard and jump straight into that library’s source code is very powerful. You get to go deeper and deeper and see how other people solve problems and communicate their solutions. It makes you better.
At the next level, if your coding environment can give you instant access to the version control system of another project then you can leverage that to learn. If it’s a high quality project then each line of code will “git blame” to a commit where the developer explains what they were doing. The Director’s commentary, but for code.
If you can get some kind of critical feedback that would help. That’s hard to do online. People are more unkind than they are kind. You may well be on your own there, until a good mentor finally comes along. For many people, their job provides a way to get exposure to other engineers who can act as a mentor.
1) great job for posting and seeking help! By doing so you’ve already taken the first step to moving in a better direction, which is more than a lot of people
2) A ton of people, myself included, felt like you are describing. Multiple times. Stuck, falling behind, wasted years, unsure about direction, etc. It is discouraging and I feel for you. But believe me when I say that it is very likely you will get to a awesome place eventually. You’re in the hard part now of not knowing the future
3) Long term (2-5 years) the best road map to turn this around I can recommend is a book call “So Good They Can’t Ignore You” by Cal Newport. It changed my life and helped me build a high value career I love. The basic idea is that you should find rare and valuable job skills adjacent to what you can do currently, and then put in time learning them. This over time leads to an incredibly fulfilling and lucrative career. If this is the only thing you get out of this post, it will be worth it
4) Short term: if this job is killing you, apply to other jobs. Do this by email/text/message 10-20 people you know tangentially at other companies and just say “Hey I am looking around, any roles at your company I should consider?” That’s all that’s needed, no “networking”. Then when you go to interview, prep for them by preparing what questions they might ask and prep answers. Try to find a job that will give you skills in a valuable direction related to what you are familiar with now
Hang in there. From what you describe you have a bright future. I can see that from my vantage point but understand it may be hard to see now. You got this!
Random other thoughts: Leetcode sucks. Think of Leetcode problems as riddles. Most riddles are impossible to solve if you haven't heard them before.
Satisfaction in a career can come from many places. For some, it's all about solving complex technical problems. Others are happy to be contributing to a charitable mission. Some just want to get paid a lot. Others find satisfaction in being part of a team. Figure out what satisfaction means to you and align your career with that.
>"Second, be disciplined when managing your time. Put in the hours you need to put in at work, but don't rob yourself of your free time by working excessively long days."
To add additional clarity for any readers who skimmed: OP should be disciplined with creating time for their personal life by creating boundaries with the company, and should stop being as disciplined with sacrificing personal interests on behalf of the company.
Overall, the poster's primary interest at this point should be to improve the stability of their own life as much as possible, regardless of how people at the company will feel about it.
It's a long journey to get really good at anything, and even at the apex of your skills there'll be others much better than you. Curiosity and reflection will be your best friends here, and this post says you're turning to them in a state of crisis. Good. Keep it up and find your own answers.
Oh yeah and everyone's right, you're working too hard.
Sure sounds like it. I've run 100+ interviews at a FAANG, nearly all levels and IC roles - email me if you'd like to chat about roles/responsibilities/comp (we can keep it anonymous and high-level).
There are also professional services like triplebyte and interviewing sites like interviewing.io to help get an objective assessment of your value.
> I've put in countless hours of work every day (70-90 hrs), being on-call almost 24/7, sometimes for straight 7 days for months despite only getting paid on a salary basis on 40 hr work weeks; being a loner helps with working long hours.
If you're working this hard, you are carrying the team. You know stuff no one else knows. You have the power to say no.
Stop working so hard. Set a fixed 40hr schedule then stick to it. If your boss wants more, that's their problem.
You are a cog in the system. The next level up in the system plays with the cogs they have influence over, including you. If you are ever working beyond your contract, then your boss has failed their job.
It may be that your immediate boss has been put into an impossible position by the next level up (and so on) but that is NOT your issue, it is theirs.
As a human being, you might be inclined to forgive another humans failure. I know I do. And this is good for society in limited amounts as no human is perfect.
However at the point of constant overtime of even 1 minute - every week for months on end - it is clearly abuse. Get out now.
Before you do anything seek a career counselor that will help you plan your next 1,3,5,10 years. You'll need to review your plan every year but at least you'll have a road map of where you are going.
Also understand that learning new stuff that will be out of date in a few years is not worth the time. There is only so many times you should have to learn a new language and stack. Spinning the wheel leads you nowhere. Focus on knowledge that will serve you your whole career.
Absolutely. To reinforce this: any money secured by working longer hours will very likely be spent on treatments for the physical and psychological health problems that result from working such long hours. The advice is especially important because the original poster is getting paid on a 40 hour salary, not even getting paid for overtime.
In all other regards, I am confident that OP is a wonderful chap.
It sounds like you are the 'rockstar' on your team honestly.
I think you may at least subconsciously know it too given that you wrote this post.
Step one is to start dialing it back. Another commenter suggested reserving an early hour of the day for leetcode. That's a good idea. When you're ready to start work, don't. Work on a leetcode problem but timebox it to an hour. Then get about your workday. You'll very quickly start to realize that there's nothing special about algorithms. It's basic patterns. No one is asking you to invent new distributed consensus algorithms on the fly in a coding interview. Mostly they're looking for whether you studied to the test or not.
So for the first little while, it's going to suck. You'll be stumped and frustrated. That's fine. Spend a bit of time trying to figure out the answer yourself but if you've given it an honest try, just google the answer. It's about pattern matching mostly so you need a base to pattern from.
Make sure you type everything out. Don't copy/paste. That'll be important for both mental memory (multiple input paths (tactile + visual) leads to better retention) but also that muscle memory will be critical when it comes to the actual interviews.
Eventually you'll get to cruise control. Easy problem won't be stumpers anymore, they'll actually be easy. Mediums will be hit and miss and hards will still be mostly failures but doing some every now and then it worth it for pattern matching to make the mediums easier.
Now that you're cruising and touch typing without IDE assistance through the easys you're ready to interview. You'll probably fail the first few. Interviews are a skill separate from actual programming and they also involve a lot of luck. All the interviews have some random set of qualifications they feel are super important. Unless your practice overlaps heavily with their preferences they won't be inclined to hire you. And when there are like 5 interviewers on a loop you can afford not having overlap with one but if you don't have overlap with 2 or more that'll usually sink you. And like I said, you can grow that overlap percentage but not much, it's mostly luck. If you get a bunch of interviewers that mostly ask questions similar to the ones you practiced and you pattern match them easily (hashmap! tree search!) then you get hired.
The first step though is cutting down your dedication to this company. You're dedicating your life to them and unless they're paying you enough to retire extremely early that's a really bad deal you're taking.
So please cut back on your hours. Take that extra time to take care of yourself first and meet up with friends and family again. Use a small portion of the extra hours to grind out the algo questions. If you can write mobile and web apps you can learn this too. It's a different skill though and it will take time. But it's worth it because you need this practice to match up against everyone else that studied to the test. When you feel you're ready take a long vacation. At least two weeks. Line up a ton of interviews and just power through. Take a break of a least a few days in the middle to regroup and analyze but in general book at least 6 interviews (not phone screens) in those two weeks. Chances are if you've practiced enough you'll get at least one offer. If you don't, that's fine, it just means you need to practice more. Analyze what went wrong, practice more and try again in a few months.
When you get an offer, don't stay at your current company. With your effort and dedication they absolutely know they're taking advantage of you. They'd probably be willing to double your total compensation if you were to actually be ready to leave. It's a trap though. They've already shown they're willing and able to take advantage and will do so again....
I think it has become your habit now to work for so many hours and still unsatisfied with the results. I am also a victim of working long hours with a break for months. In my case, it is my fear of doing nothing that does not allow me do anything else but work, it is my insecurity that tells me to fill my time by working. My suggestion is to be more courageous, take risk, make mistake and jump into uncertain territory. Things are not as bad as we think they are.