I'm sooooo disappointed in myself

Hey guys, first of all, I’m not a native English speaker, please just ignore my grammar mistakes.

I’m early 30s, working as a software engineer for 4 +years, I don’t have a related degree in CS and didn’t have any coding knowledge before I started my career. I learned basic Java, Javascript during the company training (4 months), then learned C# from several projects.
I had 2 years of experience in .NET WPF, and currently, I’m in a web app development team using C#, vb.net, javascript, and some other UI frameworks. Doing both client-side and server-side.
I have no problem with my work tasks, I’m a fast learner, I’m able to complete my work fast and good, my coworkers think I’m doing great. But… I don’t think I’m good enough, most of the time, I feel embarrassed about my coding abilities.
Right now, I’m looking for a new job, but I don’t have confidence at all. I feel even I get an interview opportunity, I don’t know how to answer technical questions. Because I don’t really have any data structure or algorithm knowledge. Also, as a 4 years programmer, I even don’t have a web portfolio…

I did a lot of self-study, I feel like I’m always studying but didn’t get any improvement.
I studied data structure and algorithm online by myself, I feel I understand a lot, but when I try to solve the questions on LeetCode, I’m always getting stacked. After checking and understanding the knowledge points, I could solve several similar problems, but then the next day, I get stacked again, on the same questions!..
Also, about the portfolio, I know I just need to start and keep focus, I should have all the required skills to make one, but I don’t know why it’s so hard for me to get started! I always work on an existed project, I know when I need to add a new class or interface, what kind of function I need, but I don’t know how to start a new project. And I don’t have any projects for my portfolio.

I tried to follow some programming courses on Udemy and here FCC, but I couldn’t have done any of them, I can’t calm down, always think I take too long time studying one section, there are so many things need to learn, and I don’t know where should I start, all these make me nervous. This is why I feel I’m not smart enough to be a developer, I keep asking myself if I’m in the right field. When I finished my work task, I feel great, I love to solve problems, I love to do some challenging work, I really want to be an expert programmer, I know I need to focus on one task, get it done and done well, but why I’m not passionate about coding… Why unable to concentrate?
I saw there are a lot of people in this community, they didn’t have any experience, but they have so much passion, they made their portfolio in one week and finished all the courses on FCC, I am really disappointed in myself…

Is there anyone who had the same experience, or anyone can give me some advice? Should I consider switching to another career field? Or do I still have hope to be a good developer? What should I do to really improve my skills?

Hi @feigo808!

Welcome to the forum!

So this sounds like the classic case of imposter syndrome. Everyone experiences this at some point. It is completely normal. One way to help overcome imposter syndrome is to deal with the facts.

The facts are

YOU ARE EMPLOYED.
YOU HAVE BEEN WORKING AS AN ENGINEER FOR OVER 4 YEARS.

I want you to stop and think about that.
If you really sucked at your job then the narrative would have been “I have been fired 6 times and no wants to hire me because I can’t code”

So unless you have left that part out of the story, you are probably a better programmer than you think you are.

I am going to link this article from FCC news on imposter syndrome that might help you.

You don’t need to be so hard on yourself. You are probably doing fine.

Just take it one day at a time and do small things that help develop your skill set.

Hope that helps!

6 Likes

“Comparison is the thief of joy”

The idea you need to love coding, need to be some kind of passionate genius that builds their portfolio and has a bunch of cool and awesome projects on it, and solves all the leetcode questions instantly to be a “good developer” is false.

You are a developer, the only person that is disappointed in you is yourself. Your focusing on all the negatives rather than balancing it out with the positives and the net result is you just only feeling the negatives, and feeling like you should give up and change careers because of X. There are good reasons to quit and change careers, but I don’t actually see you mentioning any of them.

The best reason you have presented is your “aren’t passionate about coding”. Even though your doing it as your day job and doing it well. I don’t think this is a valid reason to quit, I don’t even think this is a valid reason to consider yourself “not up to the task”. If you’ve been doing your job for 4 years, then you already have solid experience under your belt compared to whatever a “passionate genius” would have.

There are also a massive majority of people who started and quit. You can blame passion, or time constraints, or just the content being hard. There are also those who are passionate and still can’t get a job, because the market is rough.


Comparing yourself to others is a “losing” proposition.
There is always more to learn, more “passionate people”, and more projects to build. Does that mean your a “disappointment” because you aren’t doing any of these? Hell no.

The only person you should bother to compare yourself with is… yourself from yesterday. If your better than you were yesterday, even just a little, then good your living life. Anything more is just butter, don’t consider yourself a “failure” for living up to some imaginary standard of success, live up to what you can be with what you got.

Aim to be the best version of you.

2 Likes

Right now, I’m looking for a new job, but I don’t have confidence at all. … I don’t think I’m good enough, most of the time, I feel embarrassed about my coding abilities.

Yup, we all know that feeling.

I have no problem with my work tasks, I’m a fast learner, I’m able to complete my work fast and good, my coworkers think I’m doing great.

Isn’t that worth something? Don’t their opinions matter to you?

I feel I understand a lot, but when I try to solve the questions on LeetCode, I’m always getting stacked

Two things here:

  1. There is a difference between understanding something on a theoretical level and being able to produce it and use it.
  2. Algorithms and complex data structure are hard. And I know a lot of great coders that struggle with them. Regardless of how much stress is put on them in interviews, there is a lot more to coding than algorithms. Don’t be so hard on yourself.

The answer to both of these is practice.

Also, about the portfolio, I know I just need to start and keep focus, I should have all the required skills to make one, but I don’t know why it’s so hard for me to get started!

Yup, you need one. Pick one goal and work on it, a little every day. Do you have a portfolio page? That could be your first project. And then see if anything else you’ve done can be adapted. They don’t have to be amazing projects - it’s better to have something than nothing. You can always change them later.

I tried to follow some programming courses on Udemy and here FCC, but I couldn’t have done any of them, I can’t calm down, always think I take too long time studying one section,

Concentration is a skill. The discipline to stick with something is something you can learn. There are many self-help books out there. I like the book Deep Work.

But maybe take a break from tutorials. Another way to learn is to just build things and learn new libraries, etc as you need them.

Should I consider switching to another career field?

Probably not. Do you have no interest in coding left? Are you not able to remember what you enjoy about it? Maybe take a couple weeks off the learning and try to remember what you enjoy about coding. Think up some projects that would be fun to do. Everything in my portfolio that isn’t a work thing or a tutorial thing is something where I thought, “Hey, I wonder how I would code ___.” Just worry about fun. Employers are looking for people that code well, but they’re also looking for people that have fun coding - nurture that for a while.

1 Like

Hi @jwilkins.oboe!
Thank you so much for suggesting that article!

Imposter, that’s exactly what I am feeling, I had almost all the thoughts mentioned in the imposter syndrome. After reading that article, I feel much better.

It may be hard to overcome that feeling, but I’ll try my best, because I believe I will do better without overthinking, without imposter syndrome.

Thank you again!

1 Like

Hi @bradtaniguchi,

Thank you so much for taking time out and gave me those advice.
I think not only about being a programmer, I probably need to learn how to keep calm and being more positive. I always have negative thoughts about myself, sometimes it’s forcing me to do better and achieve my goal faster, but most of the time, it just makes me feel down.
I’m gonna make a ‘half a year’ plan, as you said, just focus on myself, compare with myself.

Thank you!

Hi @kevinSmith!

I just ordered the ‘Deep Work’ last week!!! I saw a lot of people recommended that book. Hope it can help me build my concentration skill :slight_smile:

I know there is no shortcut for success, small steps make big changes. I always want to achieve my goal perfectly, always feel with 4 years of working experience, I need some nice and impressive projects on the portfolio, a calculator or a todo list is too simple to put on it. But you are right, it’s better to have something than nothing, and yes, I can always make them better later.

Employers are looking for people that code well, but they’re also looking for people that have fun coding - nurture that for a while.

Thank you so much for this advice, I think I always care about what projects on others’ portfolio, always try to do the same things, or follow a tutorial, but they actually limited my creativity. The portfolio is for myself, it’s about me, I should think about it by myself.

Thank you so much!

1 Like

Yeah, I think we should stay away from tutorial projects in our portfolio - they’ve seen a thousand TODO apps and FCC weather apps. I think tutorial projects are pretty unimpressive. It’s like, if I had a doctor standing over my shoulder, he could probably talk me through taking out someone’s appendix - but that doesn’t make me a doctor. I think the projects that you conceive and design and figure out are much more impressive. But… if tutorials are all you have right now, then put that in, for sure, don’t hesitate. As we agree, you can always change them later. Or just push them further down the list.

As to doing “the same things” as other people’s projects, you can do it or not. There is nothing wrong with implementing someone else’s idea, especially as a learning/portfolio project. The employers aren’t looking for “idea people” - they have their visionaries for that. You are trying to show them that you code well. So, if you see a project that you like, go ahead and do your own version of it. If you hate that idea and want to do something completely different, do that instead.

Just find something that seems fun. I was recently watching a video of someone solving a sudoku problem and he was using specific software that I thought was cool. It didn’t solve it for him but allowed him to make Schneider markings and others to help him solve it and then checked it for him at the end. I though that would be a fun thing to build. And then maybe after that, it would be fun to try to build a solver.

One of the portfolio apps that I build was a “timezone comparer”. I was having to make some international calls and was always wondering “if I want to call them at 10am their time, what time would that be here?” So, I built a little app that would allow you to enter two cities, get their timezones for google’s API, then show the next 24 hours and how the times line up. I added a map to show the cities.

I wanted to learn React Native and my wife and I were thinking about moving to Europe so I thought it would be fun to write a game to test converting metric to imperial and release it on Google Play.

These were simple apps, but they probably got more interest in interviews than everything else combined. Just get inspired and build stuff. Don’t worry how original it is, how useful it is, how cool it is, how advanced it is - just build stuff and keep learning new tricks along the way.

One of the portfolio apps that I build was a “timezone comparer”.

That sounds very interesting and useful! I need one myself too!
Thank you so much for giving me those great advice and ideas, I’ll take some time to think about what I am interested in, what app can help me in my daily life.
Your advice really gave me lots of motivation!

Thank you!

1 Like

It’s not much - here is the app, here is the code. Make your own version, improve on mine.

1 Like