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@piefed.social
    link
    fedilink
    arrow-up
    0
    ·
    5 months 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.

  • friend_of_satan@lemmy.world
    link
    fedilink
    English
    arrow-up
    0
    ·
    5 months ago

    I say take the job that pays more and rediscovery your joy. The world needs more people who understand how to code but do something other than code as their full time job.

  • thorisalaptop@lemmy.world
    link
    fedilink
    arrow-up
    0
    ·
    5 months ago

    What you’re describing sounds like burnout to me. Stepping away from coding could be a good step in recovering. New offer certainly sounds worth trying, I hope it goes well.

  • MajorHavoc@programming.dev
    link
    fedilink
    arrow-up
    0
    ·
    5 months ago

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

    Old man programmer checking in.

    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.

    Don’t sweat it. No one knows how the fuck computers work.

    Anyone who thinks they actually know, isnt educated enough to understand about the bits they don’t understand.

    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.

    Nice. You’ve got the important part. Ride that until the end.

    I don’t think I have imposter syndrome, I think I really might have let any skill I had atrophy.

    It’s not impostor syndrome when you’re only 2 years into your career.

    If you feel like you don’t know jack shit compared to what I know, after decades… that’s because you don’t know jack shit compared to what I know. There’s nothing wrong with that. Someday I’ll be pissing myself in a nursing home run by automation you maintain. We all get our turn.

    I’m the meantime, lucky for you, I can’t be arsed to work more than 40 hours in a week, so there’s plenty of work left to do while you learn.

    And I’ll retire soon, and I’l promise I’ll do you a solid and leave decades of my own mistakes and missteps out there for you to earn $$$$ cleaning up after. You’re welcome… I guess.

    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 very normal. Welcome to the big leagues. If you do something you love for your job, eventually it’s still just a job.

    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.

    This is very normal for your current stage of your career.

    If you stick with it, it gets better when you get to someday become a self-important lob like me who only works on really interesting problems.

    And how do I only work on really interesting problems? I make my boss hire a few junior developers and I delegate all the boring stuff to them.

    It’s a pretty sweet deal for at least one of us. (Who for, varies by the day, really.)

    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.

    I guarantee that you’ve learned way more than you think. If you stick with it, you’ll have a random moment sometime soon when someone else just can’t wrap their head around a concept you take for granted.

    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.

    That sucks, sorry. There are more shitty developer teams than good ones. If you stick with it, and do some strategic job hopping, you can find the good ones.

    This is a tough time to switch jobs in tech, I wouldn’t blame you for not wanting to mess with it.

    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.

    Hell yes! Fuck your current employer for underpaying you!

    And you already admitting your current team is shit.

    Go take that money!

    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.

    Your developer skills won’t vanish. Trust your future self.

    If someone asks why you spent time as a non-developer “those assholes weren’t paying a fair wage” is a fine answer.

    It might sound defeatist but I don’t think I’ll ever be a top 5% or even 25% engineer.

    As a top 5% engineer (with a trophy for humility), it’s not all they promised.

    It turns out there’s still plenty I don’t know, and I spend much more of my time confused and frustrated than I did before. The cool part is that I’m now confused and frustrated by really interesting problems.

    I could be average with a lot of work, but not great.

    I pay top dollar for average programmers. I’m not hiring right now, but let’s stay in touch.

    There’s a lot of coders out there without the self awareness to realize what they don’t know. Those programmers never get any better, and never reach average.

    (Contrasted with myself, who, as I said, have several awards for excessive humility in spite of my undeniable genius. /s)

    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.

    Go find out!

    Beware though, when they find out you can code, they will find a way to add that to your job duties.

    I know that some people just aren’t cut out for being engineers.

    True. Some people’s ego or laziness blinds them to what they need to learn.

    I have a huge ego, and I am deeply lazy, but I occasionally put both in check for just long enough to learn.

    Maybe I have the aptitude but not the mentality to do this for 30+ years.

    Take it a year at a time. Once in awhile, take out some cash and spread it on the ground and sort of roll in it.

    Hopefully you’ve noticed, but while this job is usually a pain in the ass, it also pays really fucking well.

    I want to know if that’s what it sounds like to people who’ve seen that before.

    I’ve had this conversation with all of my very top people, if that’s any consolation.

    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?

    If you told my younger self how much money I could make as a mediocre engineer, I would be all over that deal.

    I would’ve agonized about the trade-off if I knew I would stop loving my hobby, but taken comfort that I would later love it again.

    Everything happens in seasons. Some seasons I code for fun. Some I don’t.

    A cool side effect of being paid to code is that when I do find the mind space to hobby code, I am a fucking badass hobby coder.

    I think you should take this job because your current employer is running a shitty team, and underpaying you. Then take another programming job later when the next opportunity arrives (and it will…it really will.)

    • Lichtblitz@discuss.tchncs.de
      link
      fedilink
      arrow-up
      0
      ·
      5 months ago

      It turns out there’s still plenty I don’t know, and I spend much more of my time confused and frustrated than I did before. The cool part is that I’m now confused and frustrated by really interesting problems.

      This is spot on. Your whole response ist just a trove of insight, I wouldn’t have been able to articulate so eloquently.

    • Gristle@lemmy.world
      link
      fedilink
      English
      arrow-up
      0
      ·
      5 months ago

      Not to hijack from the OP, but would you change your reply if someone was feeling similarly but wasn’t yet in their first role yet? I’m coming out of 2 years of private mentorship and have spent the last almost 3 months applying with barely a whisper of a reply from a fraction of these jobs so I’m a bit down on myself. I felt confident a month ago but now I’m slinking back applying to jobs in my old industry.

      • MajorHavoc@programming.dev
        link
        fedilink
        arrow-up
        0
        ·
        5 months ago

        ODelay42 said it all.

        I saw a 20 year veteran programmer have a 3 month job search last year. I haven’t seen that since Y2K. Both in Y2K and the 2008 recessions, it was tough to break into the industry.

        It sucks, but it will pass. Hang in there.

      • a1studmuffin 🇦🇺@aussie.zone
        link
        fedilink
        English
        arrow-up
        0
        ·
        5 months ago

        Once you’re in the industry and see the typical shitshow that goes on in most companies and teams, you won’t think twice about not hearing anything for 3 months. There’s a million reasons why you won’t get a job or not hear back for a really long time that have nothing to do with you. Stick with it, times are tough right now but your luck will eventually change.

      • Odelay42@lemmy.world
        link
        fedilink
        arrow-up
        0
        ·
        5 months ago

        it’s a bad time to be looking for work in tech.

        Be patient, keep your head up. Keep applying. You’ll get something soon.

        Sorry you’re seeking in a down market. It happens every now and again in this industry. You’ll get through the eventually.

    • FreshLight@sh.itjust.works
      link
      fedilink
      arrow-up
      0
      ·
      5 months ago

      Are you guys both my colleagues? This feels so unbelievably relatable. Seems like a universal issue with junior devs. OP, hang in there if you want to, or don’t if you don’t want to. Your journey seems normal to me :)

  • halcyon@slrpnk.net
    link
    fedilink
    English
    arrow-up
    0
    ·
    5 months ago

    Background: 16 years programming professionally, 20+ including hacking in high school. Currently in a principal engineer role.

    Immediate reactions: you do not have to program in your free time. I ferment veges, I brew kombucha, I garden, I make hot sauce, I hike, I camp, I spend time with my dog, I game, I listen to music, I make music, I work on my house. I absolutely do not fucking program in my free time. I used to love programming, now it’s “what I do”, but I don’t love it.

    That said, you may have to invest some of your free time to grow your skills. But your primary learning should be during your paid hours. If your job isn’t providing growth, that’s an issue with the company. There are better junior positions out there, but it is a guessing game. I do think it’s important to mention that the jump to senior is largely an accumulation of domain knowledge, not necessarily industry knowledge. Climbing the ladder is often a matter of sticking around long enough to get that promotion, then leveraging it into another company.

    I wouldn’t blame you for taking the alternative job - and honestly, the best program managers, the best team leaders, have some experience doing the actual work. I’d say do it if it seems like a better opportunity. You can always circle back if you prefer the individual contributor route.

  • jordanlund@lemmy.world
    link
    fedilink
    arrow-up
    0
    ·
    5 months ago

    You have to do what’s best for yourself and your situation.

    I was a systems administrator for a decade or so and I reached a turning point… I had a bad experience, was burning out, and I had the opportunity to take a new sysadmin gig at a credit union, or take a step down to a support role, that paid more, with less responsibility, and had IPO shares…

    My kid was getting ready for college, so option 1 positioned me well if I needed to load up student loans. Option 2 maybe made it so we wouldn’t need student loans.

    I went with option 2. Less stress, less responsibility, more pay, paid for kids college in cash, now through a series of IPOs and acquisitions, I’m working for a VERY large tech company.

    Does “not being an engineer” look right for you? Quite possibly.

  • rtfm_modular@lemmy.world
    link
    fedilink
    arrow-up
    0
    ·
    5 months ago

    Over the 16 years since graduating, I learned that defining yourself by your career is often a trap. At least it doesn’t sound like you’re getting deep satisfaction from your work.

    I burnt myself pretty bad going into the field thinking I was perusing a passion career and just kept getting kicked down for 5 years chasing a passion career until I found a work environment that paid decent and valued work/home life balance. In school I thought I’d never sell my soul, but now I’ve been working with the same people for a decade now and pretty happy about it, even with if the actual work is utterly boring.

    Unless you’re a fortunate few that are truly passionate, driven, and lucky enough to land a career that fills your entire bucket, look for a job you can tolerate BUT with group of people that support you and your growth. In the end 2 years in is a drop in the bucket and you’ll see your career change directions over and over. You can always learn new skills or relearn them, so if this new job is something different to get you out of a slump, I say go for it. No one can answer for yourself but you.

  • yemmly@lemmy.world
    link
    fedilink
    arrow-up
    0
    ·
    5 months ago

    Having done this for about 25 years, I’ve noticed that conceptual knowledge and getting work done are very different things. Everyone, and I mean everyone, gets stuck when they’re developing. The people who become best at it are the ones that don’t get discouraged about getting stuck, and just keep banging away. Everything is getting more complex all the time. The people who claim to know it all are full of shit.

    The real question is this: Do you wake up in the morning energized about solving that problem you went to bed stuck on? Or does it fill you with dread? If it’s the former, keep banging away. If it’s the latter, no job is worth sacrificing your health.

  • 0485@lemmy.world
    link
    fedilink
    arrow-up
    0
    ·
    5 months ago

    I’m sort of the same as you.

    I took a 6 bootcamp, got a job straight away after as a full stack junior web developer.

    Programming as a job was the single worst decision I make. I was working with languages and frameworks I don’t enjoy, I was building a product I don’t care about in the slightest.

    It took me 1 year of full time web dev before I quit and went back to regular IT which isn’t the most fu thing, but it works for me. I’ve been doing it for over a decade so I can do it in my sleep, it’s easy money tbh. Programming for me is definitely more of a hobby than a job. Having it as a job really killed my love for it

    Nowadays I only code in Python which I LOVE. I use my programming skills to automate work tasks, and I make small scripts here and there and it’s so much fun.

    Solving small problems with scripts is just what I enjoy doing. I get to work on a project for a day or two. I can complete it fast then move on to something else.

    Now I’m about transitioning into Data Engineering instead of Software Development.

    • jkrtn@lemmy.ml
      link
      fedilink
      arrow-up
      0
      ·
      5 months ago

      Simply being aware they’re not in the top 5% probably places them well within the top 25%.

  • BeigeAgenda@lemmy.ca
    link
    fedilink
    arrow-up
    0
    ·
    edit-2
    5 months ago

    First of all if you solve problems that means you know enough of the subject to reason out the solution, it may not be perfect but very few solutions are.

    I have been working on legacy code and maintaining old c++ code for a decade (200.000 loc) and most of the time I had to spend days debugging and reading code just to understand enough to get a possible solution, and then I still end up writing a solution that breaks in a different corner case that I never could have imagined.

    So yes most of the time you feel like you don’t know anything, but over time you end up knowing a lot of how that codebase works. And after two years you must have picked up something about what you are working on.

    Then you have those programming language genius colleagues, that know all the tips and tricks of a language, I use them to get ideas on solutions, because they always have an opinion on what is the “right” way of doing stuff.

    That’s just my 2 cents.

  • iawia@feddit.nl
    link
    fedilink
    arrow-up
    0
    ·
    5 months ago

    Don’t confuse a bad work environment with not liking or being suitable for your job.

    If you liked programming, do your work in the way that made you originally liked programming. People will put pressure on you to just “do things”. Don’t. Ensure you start understanding, slowly get more insight into what’s going on. Ask the people around you any and all questions you need to get more understanding. Allow yourself to learn. That is the only way to start feeling in control, and the only way to become ‘more senior’.

    That being said. If you want to move on, there’s no harm, and no shame. Just do it because you’ll be doing something you know you will like better.

  • Cowbee@lemmy.ml
    link
    fedilink
    arrow-up
    0
    ·
    5 months 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.

  • Hector_McG@programming.dev
    link
    fedilink
    arrow-up
    0
    ·
    5 months 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.

  • trolololol@lemmy.world
    link
    fedilink
    arrow-up
    0
    ·
    5 months 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.