Live data from Hacker News

Ask HN: I've realized I'm a bad software engineer and I'm over 30, what's next?

news.ycombinator.com

61–70 of 275 posts

Re: Ask HN: I've realized I'm a bad software engineer and I'm over 30, what's next?

#61
Imposter syndrome is real. At the same time, it seems like you've noticed things you could improve.

Give yourself more time to iterate and fix problems, give yourself some time to iterate this code and fix the basics.

For things of medium difficulty, I've found it good to prototype things outside the codebase, inside a jupyter notebook until the bit of code I'm working on looks right.

For some things, stepping away from the keyboard and making a list / diagrams can definitely help.

Just try to carry on improving, it's all you can do.

Once you've done any project it's easy to think of ways you'd do it differently / better a second time.

Re: Ask HN: I've realized I'm a bad software engineer and I'm over 30, what's next?

#62
You've taken on a new challenge, and that's great. You're missing a few elements of coding style, particularly the elements that make code easier to read and maintain for a team of engineers. That means you're new to devoping on a team, not that you're bad overall. Your co-workers may take these things for granted, but you have your own skillset, like the abilities to manage time, hit deadlines, and solve problems completely independently. (Those will be seem to be missing for a while as you grapple with a new codebase, company, and team, but they're still there!) Think of learning coding style on the job just like learning a new language on the job, and ask your co-workers to be patient and point out how you can improve while you adjust and onboard. It'll go faster than you expect!

Re: Ask HN: I've realized I'm a bad software engineer and I'm over 30, what's next?

#63
If you feel motivated to improve, then do it. The greatest strides I ever made was when I realized that I needed to level up to fit in with my new team. That means studying their code, structure, habits and emulating those. Every time you right code, think about what others on the team would say about it.

If you don't really like what you do, it's perfectly fine to try out project management. Management involves its own skill set, but being a good developer is not a requirement. Knowing how to write a little code yourself and being able to empathize with your team is a rare and useful ability in project management.

Re: Ask HN: I've realized I'm a bad software engineer and I'm over 30, what's next?

#65

A long time ago, I described what I did as a programmer, and my friend said "Oh, so you get paid to learn?" I thought about it, and agreed. Part of programming is learning. Sounds like you've got a great opportunity to learn what you don't yet know: you already have a list of things you know you need to work on, a codebase, and a job. Do you think one or more of your co-workers would be willing to give you feedback?…

> Part of programming is learning.

A big part.

Re: Ask HN: I've realized I'm a bad software engineer and I'm over 30, what's next?

#67
> I've been able to always have work on my desk because I'm always moving and talking with people in the industry

There were a lot of good suggestions from others. But just from this, it sounds like your true skill is sales.

Just put two and two together, taking the facts in your post as a given. You're a (supposedly) bad coder, but always had customers as a freelancer. In other words, you were doing a great job selling a mediocre product, without even realizing or trying. That's the mark of a salesman.

The good part is that you don't have to completely waste your technical skills by switching to this route. There's plenty of jobs for sales engineers or sales positions that require an engineering background. Maybe you're not the best at building software, but you certainly understand it well enough to know the products.

One way to transition may be to find one or two "good engineers" to team up with. There's a lot of great coders out there, who'd love to work for themselves, but unlike you can never get enough business. Maybe it's a consultancy. Maybe it's a startup. Either way, they can handle the engineering side of the business and you handle the sales. A partnership like this can be extremely lucrative for all parties involved.

Re: Ask HN: I've realized I'm a bad software engineer and I'm over 30, what's next?

#69
The first thing I think I would say is: Hang in there. Regardless of your situation there's going to be a way out of it with the facts on hand -- you have a lot of the skills you need to do "Senior Software Engineer" type roles, as well.

For example: one large professional skill you have is this: "I've been able to always have work on my desk because I'm always moving and talking with people in the industry" combined with this: "I've always managed to solve the problems in front of me but in a 'hacky way'."

Those to things together say to me: "This person is able to communicate with others in order to solve problems" which is really one of the key differentiators between a more "senior" software engineer and a more "junior" software engineer.

I have some questions: Are you still at the company? If so I think you have a great opportunity ahead of you to improve some of your software design/engineering/crafting skills while leveraging some of your strengths.

If not, I think you should consider another medium sized company and not worry about this most recent experience as being the end of your software career.

Next question: The code that was filled with hardcoded values, wrong structure, difficult to debug bugs... was that your code or the existing code? If it's your code, then you're in a great position (like others have said) because you've already identified problems and so that's your list of things to work on next.

What does "failed to accomplish it" mean in terms of the task? The thing about software, especially at a company that's not going to go down in flames because of a problem you've failed to solve is that... you can try again. You can keep taking swings at the task until you figure it out and eventually knock it out. So that doesn't seem bad.

"I'm thinking about looking for semi senior roles but I'm afraid it'll look weird..." As a hiring manager who's been interviewing people in this industry for more than 15 years it never looks weird. And if it looks weird and you have something to offer and the company can't see past whatever "weirdness" that's their loss -- you sound like a thoughtful, introspective employee who's got an impetus towards self improvement. That's gold.

You could transition to PM, you could "take a break" -- but I'd want to think carefully about the answers to the first few questions if I were you because it sounds to me like you are interested in software development and are interested in self improvement in software development and if so it sounds to me like you have a great opportunity in front of you.

If you are still feeling lost, and actually make it to my message, hit me up at the email in my profile -- I would be happy to talk about it further in more detail.

Re: Ask HN: I've realized I'm a bad software engineer and I'm over 30, what's next?

#70
So a couple of things:

If the first thing you failed to accomplish after 10 years was a medium complexity task, consider yourself lucky in some sense. Also, who determined the complexity level of this task, did you decide it was medium complexity, and if so is that corroborated by the team?

Moreover, most "bad" programmers don't necessarily think they are writing bad code, did you come to this conclusion yourself? If you did, it seems like maybe some other factors came into play, maybe you didn't have enough time, maybe the requirements were unclear. In either case, 1 failed task seems like a lot to evaluate 10 years of a career on; having recognized this behavior in myself, you might be catastrophizing this failure in a way that's not productive for you.

If you received this criticism from somewhere else, that's okay too, being "over 30" isn't some death sentence, there's plenty of time to reinvent yourself, start a new career or rebuild your skills from the ground up - if that's what you want to do.

Maybe part of this is just, you aren't sure you want to be a programmer and you are using this "failure" as a kind of escape hatch, which you know, is also fine. Or, maybe you aren't sure you want to devote the effort you might think it would take to actually improve as a developer

I would say, check in with yourself, and figure out what you want to do or at least what you don't want to do. I wouldn't change careers simply because you think you aren't good at this one. Being a PM, has a whole other set of challenges (but if you are actually curious, the idea that you have to be able to "code it the right way" should not be a blocker).

If you do decide you want to become a better programmer, realize it's not going to happen overnight, but conversely it's not going to take as long as you think. But you do have to start somewhere. Rather than ask on HN, I would go find someone whose technical opinions you trust (you mentioned talking with people in the industry - hey developer evangelist is also a role out there for you, heh), and ask them to review some code you've written and have them articulate those weak points, and start from there.

If you decide to start, just remember to start small. It doesn't have to be late night grinding sessions, 15-30 minutes a day reviewing a topic, solving a code challenge, reading a chapter of a book - can really add up after a few months.

Post reply on HN