1

I'm a loser, burnt-out, directionless but want to turn it around

 1 year ago
source link: https://news.ycombinator.com/item?id=31565514
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

I'm a loser, burnt-out, directionless but want to turn it around

I'm a loser, burnt-out, directionless but want to turn it around
49 points by RoseBuckler 53 minutes ago | hide | past | favorite | 25 comments
I've been programming on and off since the age of 16. Unfortunately, I have never been a rockstar programmer. I've always pieced code together from multiple sources to create programs but I've always failed to come up with a solution from scratch of my own and provide any value. I've always wondered how other smart people are able to come up with libraries, services and various solutions from scratch. I've devised countless ideas only to never execute them for various reasons or get started with them only to never fully complete them and see it all the way through.

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?

1. Take time off, like a month or more. [1] Use it to do anything other than coding. Hone a hobby, travel, volunteer, etc. No-one will care about a month or two gap on your resume.

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.

s.gif
>Hone a hobby

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.

s.gif
Yep. Tunnel guy [1] knows what's up.

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

My two cents: Focus on your health first. If you're not taking care of yourself and exercising, you're doing yourself a disservice mentally. 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. If you want to improve your knowledge of CS, I'd recommend signing up for some courses. Online courses work but if you have a community college nearby that offers CS, I'd choose that. Having a place to go and meet other people with the same interests as you will give you a small social outlet and keep you accountable.

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.

> 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

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.

If you wish to be a "rockstar" (or even a good coder), clarity of thought and good design count for 80%-ish of a coder's productivity. Many programmers spend their time throwing gobs of code at poorly designed systems. To get to a place where you can see your problems clearly and then execute them in an optimal fashion, I recommend that you take lots of walks, daydream, throw away inferior solutions, and most of all reflect on what you've done so far and what you've learned.

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.

A few thoughts from a person who used to feel like this, and is now in their 30’s, having done everything from startups to big tech companies, and now feels super happy with their career:

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!

[Some advice from a practical angle, though I see others are being much more helpful advising you about life stuff, which is heartening.]

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.

No one is going to feel great after working 70-90 hours a week. If you want to grind LC, start going to sleep earlier and spend the first hour of each day doing so (when you're most rested). I promise you will feel better.
Start sleeping more, eating healthier, exercising more, and working less. Cut down on weed and alcohol if you partake. This should hopefully help you feel well enough to get a different job which will be less stressful and pay better. Good luck!
s.gif
+1 to all of the above. Both parent commenter and I know, these are easier said than done (acknowledging it is hard to incorporate these, just in case)

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).

You are certainly dealing with burnout. Most people going through it don't realize it, but the increased negativity is in fact a part of that package. The inability to concentrate and brain fog are the more obvious symptoms. Type 'burnout' into HN search and you'll turn up plenty of good advice on the subject. You're in good company (unfortunately).
You can't improve because you're burned out. You're burned out because you're working insanely hard.

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.

Dude you are working twice as many hours as you are being paid for. Effectively you are working for half your rate. Are you even making minimum wage after accounting for your actual work hours?
It sounds to me like it's not because of your skills and experience. You have been working in your field for a long time. Very few developers are "rock stars". We all build on the shoulders of giants - sticking code together is a pragmatic approach - especially if you work for a startup. But it sounds to me like you're comparing yourself too much to your ideal. My tip: Compare yourself less with "rockstars", learn the skills you are really interested in and reduce your working hours to a bearable level.
Others have mentioned some good things, so I wanted to suggest you read about Imposter Syndrome. If nothing else, you’ll realize you’re not alone in questioning your skills. It’s a very common issue in IT related fields.
Do yourself a favor and figure out those concentration/brain fog issues as quickly as possible.

For 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.

s.gif
I developed pretty severe brain fog after being exposed to mold, and boy, do I have a new found sympathy for those who also struggle with it. It tends to bring with it a sort of stupor that is detrimental.

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.

Id recommend either some time off, or change of scenery as best paths forward. While not a complete solution, it will may help with - stagnant salary - work life balance - isolation

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.

Come up with a positive narrative for your experience, then shop it around with recruiters. You’ll be good in no time
s.gif
This is good advice, recommended by a clinical psychologist in the book "The Defining Decade: Why Your Twenties Matter." From the book:

"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.

You think you wasted your twenties? When I was your age I was cleaning window blinds and dropping out of college, and I was yet to waste 4 years as a massage therapist. Got my first real job at 32. Now I’m almost fifty and finally enjoying life.

All this to say there’s so much life ahead of you and it can take you a million places if you let it.

You are body, mind, and soul.

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.

Only 10% of programmers are top 10% programmers, 90% are not.

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.

Are you a former CS major? It sounds like you possibly need structured guidance. Although it's not necessary to have a formal education in CS to succeed in this area, it does help a bit.

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.

s.gif
Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search:

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK