I could use some honest advice from experienced programmers and engineers.

I’m almost at the two year mark as a developer. On paper I might look like a passable Junior Dev, but if you sat me down and asked me about algorithms or anything else I did to get my job in the first place I would be clueless. I can solve problems and always get my work done, but I don’t even know the language/framework I use daily well enough to explain what’s going on, I can just do things. I don’t think I have imposter syndrome, I think I really might have let any skill I had atrophy.

I used to enjoy programming as a hobby in my spare time, but in two years I’ve opened the IDE on my personal machine no more than twice. People talk about all the side projects they have, but I have none. I feel too stressed out from the job to do any programming outside of work, even though I love it. I feel like I can’t level up from a Junior to Senior because I either don’t have the headspace or the will to do so. It doesn’t help that the job I’ve had has taught me very little and my dev team has been a shitshow from the beginning.

At the moment I have an offer on the table to do a job that isn’t engineering (but still tech) and it surprisingly pays more. Part of me thinks I should take that job, rediscover my passion in my spare time and build my skills, but I fear I might go down this route and never be able to come back to engineering. Not that I’m sure I want to.

It might sound defeatist but I don’t think I’ll ever be a top 5% or even 25% engineer. I could be average with a lot of work, but not great. I could potentially be great in the new field I’m being recruited for, but that’s also hard to say without being in the job.

I know that some people just aren’t cut out for being engineers. Maybe I have the aptitude but not the mentality to do this for 30+ years. I want to know if that’s what it sounds like to people who’ve seen that before. If you were in my position, would you walk away and just be a hobbyist programmer or stick it out and hope to be a mediocre engineer one day?

  • Rimu
    link
    fedilink
    31 year ago

    Being mediocre is fine. And you can’t expect to feel competent after 2 years, especially if you’re not in a supportive environment. Maybe 5 years. It took me muuuch longer than 5… This stuff is hard, don’t expect to master it quickly.

  • @[email protected]
    link
    fedilink
    221 year ago

    Some people are passionate about their jobs and some people just do it as a means to an end. There is nothing wrong with being in the later group and I say that as someone with ~20 years in the software space and never opens an ide at home.

    I’ve always thought the best way to kill a hobby was to turn it into a job. I won’t speak to if you should or shouldn’t change roles, there are a huge amount of factors to consider there, I’ll just say that not everyone who is successful in development is a guru, ninja, in it for the love, kind of person.

    • jadero
      link
      fedilink
      21 year ago

      I’ve always thought the best way to kill a hobby was to turn it into a job.

      100%

      I tried turning my hobby of programming into my job. On the surface, I was reasonably successful, but the most enjoyable aspects of my hobby had to be set aside in favour of actual productivity.

      Worse, the fact that I actually got pleasure from my work left me open to exploitation. When I finally woke up to that, I ditched programming in favour of “just a job” that paid the bills and was about a million times happier as a result. It’s only recently, 15 years after leaving the field, that I find myself once again drawn back to programming.

  • @[email protected]
    link
    fedilink
    41 year ago

    I personally work for more than 20 years as dev and really hate to see myself as senior. I think I am more of a Veteran. I only have more practice and survived more projects. What I am trying to say is, give yourself time. Nobody starts out and knows everything. And even if you have experience, there is always a bigger fish. Simply because the topics are too complex to know them all.

  • @[email protected]
    link
    fedilink
    111 year ago

    I haven’t used big 0 or algorithms in my 15 years of professional coding. It’s just not important unless you work for a Google and even then you’d have support.

    • @[email protected]
      link
      fedilink
      11 year ago

      It’s not just Google. If you enjoy that sort of thing there are industries where it’s more important. Not every day. Not every team. And you’d have support like you say.

      But you can go a lifetime without using it beyond rules of thumb.

  • Robin
    link
    fedilink
    151 year ago

    It seems like you are stuck in a bad environment at the moment and that does not help with your own progression.

    Having a good team culture makes a lot of difference. When you get support and help from your lead and other devs, it makes life a lot better, and you learn much more from one another.

    Go. Go see what else is out there and find a better place for you.

    • @[email protected]
      link
      fedilink
      51 year ago

      100% this. If the job stresses you out so much you can’t enjoy your time off then that’s a toxic environment. If I think about work on the weekends or evenings it’s because I’m excited about it.

  • @[email protected]
    link
    fedilink
    61 year ago

    I used to enjoy programming as a hobby in my spare time, but in two years I’ve opened the IDE on my personal machine no more than twice.

    This is why I have never taken on programming as a profession. I earn more than I would ever make as a developer (even a very senior developer) leveraging my (average) programming skills to produce a personal suite of software tools and scripts that means I can do my chosen profession better, faster and with less effort than any of my colleagues or competitors. I have also developed small apps on a private/ personal basis that I have then sold to my employer for wider use in the company.

    And I still enjoy programming as a hobby as much as I ever have. Don’t underestimate how much being able to program at even an average level can boost a career in another field.

  • Cowbee [he/they]
    link
    fedilink
    81 year ago

    Not a software engineer, but work closely with them in a different field. This is 100% common, especially for junior devs.

    My honest advice is to push with it and truly spend some time in the field, and if you hate it, then leave without regrets. However, know that the initial bump is the hardest, over time it gets easier and you’ll even likely find yourself doing side projects on your own time!

    Just my 2 cents.

  • @[email protected]
    link
    fedilink
    21 year ago

    Almost all what is going on today in commercial development is based on knowing frameworks and existing libraries and is far from engineering. I am working in that 19 years and also feel that am not a true engineer, at least at my job. Yes, I developed my own UI client framework, but who know it, who need it except my company… I am not in the 5% of top world engineers. And you know what I think, I do not care. Do f#$*k off, commercial development. I have hobbies, I learn languages that I like and writing code just for fun, solving problems on codewars. I believe that true thech like C and freebsd, emacs and some other not popular in commercial development programming languages is my way. And yes, I am earning money at my job, but at the same time, as I said, I tell all these overhyped shit “do f#@&k off” and going my own way. That’s my life. Have a luck, bro. Find your own path.

    • @[email protected]
      link
      fedilink
      21 year ago

      People like you should be in leadership positions. The landscape rewards quick solutions, and quick solutions are rarely good solutions. “Whatever works” might still be a bad solution, just look at electron and that entire ecosystem.

  • @[email protected]
    link
    fedilink
    31 year ago

    As a senior engineer recently turned manager I hear this type of mentality from most of my junior all the way up to senior devs.

    The only thing I’d suggest to you is spend some time digging into the tools you’re building outside of the project you’re working on. Just to get a general understanding of how the pieces fit together. Definitely do it during work hours, though. I’m in no way suggesting outside of work, here. Once you’ve spent enough time digging, you’ll surprise yourself in how effective you get at answering questions.

  • @[email protected]
    link
    fedilink
    51 year ago

    Mate Im writing this after reading the top half of your comment.

    This is a normal path, and the insecurities are going to stay with you for a long time even after growing into sr

    If you’re not passionate that could be either in you or on your job, and the best way to see is if you search for other jobs and that excites you. So give yourself a chance and look what companies around you or far from you are doing.

  • @[email protected]
    link
    fedilink
    41 year ago

    Dude.

    1. Stop comparing yourself to your heroic peers. You know you’re not lying about your rich ‘hustle’ life (or lack), but you don’t know they aren’t.

    2. Do all the work but then get the downtime. Don’t try to do too much too soon.

    3. Decide for you in all things. If you’re gonna do the time, you pick the crime, to borrow a phrase.

    4. Don’t lose heart. Incremental progress takes a long time. Pick a quick task to stay engaged, but realize sometimes that task is ‘sleep properly’.

    That’s all I got.

  • @[email protected]
    link
    fedilink
    16
    edit-2
    1 year ago

    I can solve problems and always get my work done, but I don’t even know the language/framework I use daily well enough to explain what’s going on, I can just do things.

    Solving problems and getting a result that someone else is happy with is 90% of engineering. No one knows everything, your job is to use what you DO know to figure something new out.

    The last 10% is what you need to work on - being able to confidently explain to a boss what you do in way that they understand while sounding complex enough to justify your pay and subsequent raises.

    In time you will learn whatever system your using.

    However, on the flip side, if the current job isn’t getting you anywhere and everyone there sucks. Leave, take the better paying job for a little while, continue working on your skills and look for a engineering job elsewhere.