Think Twice Before Becoming a Software Engineer in 2024

Поделиться
HTML-код
  • Опубликовано: 17 ноя 2024

Комментарии • 44

  • @vickiprescott3458
    @vickiprescott3458 2 месяца назад +2

    As a person who isn’t particularly strong in this area, this entire video has so much foresight! The perspective on AI could easily be adapted to include the rest of the population, who are oblivious. Can someone wake them up?

    • @benjaminthorp2208
      @benjaminthorp2208 2 месяца назад

      Thanks! Yeah I have a few AI videos planned. There’s also other tech people on social media who have the same outlook.

  • @ChapmanWorldOnTube
    @ChapmanWorldOnTube 2 месяца назад +1

    I think you're correct about A.I. for the most part, but that you've misinterpreted what the "DOOM" A.I. is doing.
    Where I think you're correct is that A.I. tech *may be* coming which will take a spec, and output an executable program without first having gone through the source-code and compiling stage. This is something that the right neural net based model could learn to do, at least to some degree. It's not unlike text to image generation in that sense. The biggest challenge in this being achieved, is in the limits of contextual memory that the LLM's have. ChatGPT for example, currently has a limit of 32k "tokens", where the number of tokens required to reflect a single word is variable (as low as one, but up-to three). 32K is a lot for textual context, but into that same parameter set you must fit everything about the applications function. Consider for instance, asking the LLM to create an assembler for Intel x86_64. The encoding and instruction set manual alone, predominantly text based, is 10MB on disk, and that's only one of several large specification documents. The LLM could have this data in it's training set, which removes it from the contextual memory during the generation of the code, but that's not going to be the case for every specific business application. So a general purpose software developer, able to adapt to the needs of individual industry sectors with all of their industry specific knowledge, and still output large and complex code bases, I think is still considerable time away. I think, and also hope, I'm right about that.
    What the A.I. in the DOOM demo did however, was not write code, nor generate binary for algorithms, or any of that, but rather, it is essentially a form of image prediction. It displays an image (frame of animation) from the game, which changes with the progression of time, and then it predicts how the frames of animation would change with given input (pressing the keyboard controls). This is, in my opinion, absolutely not where A.I. will go in the future for games. Not having done any actual math, but expressing it this way to make the point, I doubt that the games industry is going to supply the energy demand of a small nation, to run GPU's to let you interact with an A.I. imagined game. It's simply not a cost effective or in any way efficient alternative to crafted binary code. Even if the technology improved to the point that it didn't look like a worse resolution DOOM than the original, it's massively expensive vs just running the old 486 binary :-)
    Honestly, I've felt the same way about the LLM's for a long time, and we're starting to see that financial bubble burst now, as the companies ask more and more fund raising into the trillions in order to train their next big model. Granted, running a model is a lot less costly than training it, but it's still very expensive.
    Thus far, I've used LLM's as sort-of having a Jr developer aid. When I have some coding work to do which would be a chore, I feed the source to the A.I. and let the machine do the work. The consequence is that I have to be certain to validate everything it's done. Everything, it'll happily lie to me about how systems work in order to explain where it messed up. Ultimately though, the validation time is far shorter than it would have taken me to do the work myself. I might also use it to read and explain some of that old, difficult to read, legacy code. It doesn't do a great job, but it can pull out the major details faster than I would by scrolling manually. I'm excited to see this kind of technology improve, but I think where it's at, is where it's staying for now.

    • @FixingSoftware
      @FixingSoftware  2 месяца назад +1

      Thanks for the thoughtful comment. Another point I glossed over in the video is the Doom AI program was pretrained on Doom itself. So not a generalized “world model.”
      Regarding memory, they do say in their paper they were surprised at how long the game could run and “remember” game state without an explicit memory capability implemented.
      But definitely feels like we’re plateauing. I’m interested to see how the new OpenAI model performs.

  • @CallousCoder
    @CallousCoder 2 месяца назад +1

    Yeah the AI hype train is just that. And I said several times: “AI doesn’t create things! LLMs just combine existing information based on a prompt”. Which means that that unique domain problem will never ever be solved by AI base on LLMs because there’s no code for it to pickup and prevent to you. And this you’ll need sensor developers always! And you can’t become a senior developer when AI makes juniors obsolete (which is basically a trend in the simpel front end part.) Therefore LLMs consume themselves and then suddenly there’s a demand for software engineers again that are truly creative and your value is 10 fold of what it is now. So is old folks we’ll be fine one way or another. You young folks make sure you keep developing things by yourself in your bedroom think up unique creative projects to do. That knowledge will always pay off.

    • @FixingSoftware
      @FixingSoftware  2 месяца назад

      Agreed! I "learned" python using chat gpt, wrote a sizeable new feature with unit and integration tests, etc. but just a month or so later, now I can't write python anymore. Because I leaned on the LLM too much and didn't deeply learn myself.

  • @nasko235679
    @nasko235679 Месяц назад

    All of the things you just said about corporate culture and how the job inside a company is structured have almost completely turned me off from looking for a job. I'm ~1 year in my learning and I'm at the point where I would be looking for a job in the field, but insted I'm working on projects and finding myself thinking about freelancing / starting a small firm more and more, the more competence I gain. I want to be a programmer and an engineer, I want to think through and create systems, and then code the damn things. I'm not interested in going to 15 meetings, talking nonsence, working with serial procrastinators that have checked out and / or being given instructions by people set in their ways.

    • @FixingSoftware
      @FixingSoftware  Месяц назад

      There are lots of satisfied engineers out there. And good companies and cultures. And at least in my experience, it’s getting into the more experienced levels that the dysfunctions really start to be noticeable. Entry level engineer at a good company, it’s likely you’d have at least a decent experience and learn a ton. That can also fund your life as you work on your own thing.
      I do paint a fairly bleak picture and that may be because of my position and experience. But as I said tons of people are enjoying their tech careers right now.

  • @djheatt
    @djheatt 2 месяца назад

    not meeting expected outcomes adds to stress levels that are hard to recover from, even after correcting bugs the stress remains.

    • @FixingSoftware
      @FixingSoftware  2 месяца назад

      Yes I was like that especially earlier in my career. Have to give yourself grace and forgiveness and be proud of how you addressed the issue.

  • @stephenwall9036
    @stephenwall9036 Месяц назад

    I've been in Software Engineering for 25 years over 12/13 jobs (I Iose count). Legacy codebase, config hell, misuse of "commitments", pointless "agile ceremony", expectation to know everything and a salary which frankly hasn't stayed pace with the cost of living have driven me out. I've suffered burnout and now can't even look at code! At the moment jobs are hard to come by, so I'm out.

    • @FixingSoftware
      @FixingSoftware  Месяц назад

      So relatable! I have a real problem with the word "commitment" being used inappropriately as well.
      Burnout is real, hopefully you're able to disconnect for a time and rest and recuperate. If you don't yet, I recommend watching Jayme Edwards' channel Thriving Technologist.

  • @smallbig857
    @smallbig857 Месяц назад

    "in some companies you might only have an hour or two a day for coding" - one of the scariest things.

    • @FixingSoftware
      @FixingSoftware  Месяц назад

      Mostly for the more senior levels, but yeah that's not unusual in my experience. I can see it being scary. But also it illustrates that engineering is more than coding.

  • @aefenleoht
    @aefenleoht Месяц назад

    Assembler is a tool. Compilers are a better tool. LLM is a even better tool.

    • @FixingSoftware
      @FixingSoftware  Месяц назад

      Yep we keep building on top of new abstractions. I wonder what sort of new language/abstraction will be built around LLMs? Just... english?

  • @CallousCoder
    @CallousCoder 2 месяца назад

    You literally describe by work day. 😂❤And as we discussed before I miss the true agile (before the term was coined) proper software engineering of the 90s where 80% of the tome was engineering and 20% business crap. Now it’s 80% business crap and 20% “engineering”

  • @PapaVikingCodes
    @PapaVikingCodes Месяц назад

    Guess I’ve been fortunate to have 6 jobs in 20 years…yall have some short tenures. No doubt for a blend of reasons … tbh a number one reason to get into software dev. #1 reason. You like doing it. If you do you will do much better than someone huntin dollars.

    • @FixingSoftware
      @FixingSoftware  Месяц назад +1

      Hah yeah I've had waaay too many jobs. Half for reasons mostly out of my control, the other half because I oscillate like a sine wave between engineering and management.

  • @KilgoreTroutAsf
    @KilgoreTroutAsf 2 месяца назад +1

    If you study software engineering, medicine, English literature or any other discipline with the sole objective of making a lot of money you will always be terrible at your job and you deserve anything that happens to you.
    There are a hundred easier ways to make money that don't involve putting other people at risk, wasting their time, or sinking their businesses.

  • @dranon0o
    @dranon0o 2 месяца назад +1

    I love your videos, but there is one thing in your general message that comes often and i will over-simplificate it on purpose: "suck it up it's hard"
    But we should talk and do something about why it is the case
    - too much non-tech people in leadership that doesn't understand complex systems
    - same non-tech people managing tech-people in a very inefficient way
    - we should have more tech-people good with people in leadership
    - agile got parasited by non-techies and corrupted it
    - inefficiency and non-techie have a huge cost
    - corporate culture for pure profit is done at the cost of the heath of SWEs, we're squeezed like lemons all the time
    I think we should talk more about how we could fix the mess, make a message, spread it in our culture and industry, push people to act. Its getting ridiculous to have a grind and hustle culture. We're working more than peasants a thousand years ago. We're expected to know it all and sacrificing our lifetime for meaningless software/missions/companies.
    There are a lot of patterns that are making our industry so much worse than it used to be.

    • @FixingSoftware
      @FixingSoftware  2 месяца назад +1

      Appreciate the critique! I think we landed on the exactly the same root causes and potential fixes. Towards the end of the video I talk about a solution being community, and it sounds like that exactly what you’re calling for?
      “We should talk more about how we could fix the mess, make a message, spread it in our culture and industry, push people to act.” Couldn’t agree more!
      Would love to hear any ideas on how to spread a message and actually mobilize people.

  • @alex.does.comedy
    @alex.does.comedy 2 месяца назад

    would love to have a podcast like discussion with you man

    • @FixingSoftware
      @FixingSoftware  2 месяца назад +1

      I have to warn you though I’m not very funny

  • @Swiftlyrics182
    @Swiftlyrics182 2 месяца назад +3

    Cool talk

  • @randyriley7560
    @randyriley7560 2 месяца назад

    Another good video! Plus I found myself chuckling out loud when you mentioned the "forced fun" that HR has you doing, all the while your brain is screaming "Can we wrap this up??? I have work to do!", as you force a smile and continue to build your marshmallow-toothpick tower like a kindergartener.

    • @FixingSoftware
      @FixingSoftware  2 месяца назад

      I'm ashamed to say that I've facilitated many a marshmallow tower exercise back in my agile/scrum days...

    • @randyriley7560
      @randyriley7560 2 месяца назад

      @@FixingSoftware If I had the energy to respond with the Game of Thrones "Shame Walk" meme, I would 🤣. Oh, and as for my marshmallow tower, I basically "phoned it in" and ended up with what looked like a marshmallow sea urchin.

    • @FixingSoftware
      @FixingSoftware  2 месяца назад +1

      I trialed it on my kids probably 10 years ago and they all built better towers than the grown adults on my team

  • @michaelderobio5256
    @michaelderobio5256 Месяц назад

    I would rather work with the bros. It's more fun and natural. I like to have bros. All men do.

    • @FixingSoftware
      @FixingSoftware  Месяц назад

      To each their own I suppose. But your world is shrinking.

    • @michaelderobio5256
      @michaelderobio5256 Месяц назад

      @@FixingSoftware If you look at demographics, your world is shrinking. BIG TIME! But facts don't matter to most people.

  • @stephenwall9036
    @stephenwall9036 Месяц назад

    "Forced fun" 🤣

  • @judonomi
    @judonomi 2 месяца назад

    Lost my trust when you said 3 month bootcamp grads were getting 150k jobs in FAANG

    • @FixingSoftware
      @FixingSoftware  2 месяца назад

      Meaning you don’t believe that was happening? I worked at a bank in 2020 and they were giving $90k salaries to boot camp grads. So 150 at faang is not that much of a stretch. At the height of the salary bubble faang was paying about 2x Midwest salaries.
      But it’s true I’m just repeating what I heard word of mouth, so fair point.

    • @davidslee101
      @davidslee101 2 месяца назад

      So I'm a 3 month coding bootcamp grad circa 2016. I didn't get 150K at a FAANG company, but my current coworker was also a coding bootcamp grad and was offered 150K at Amazon in 2020. He had been coding for 4 years by that point. He wasn't a fresh grad, but still got a job offer.

    • @FixingSoftware
      @FixingSoftware  2 месяца назад

      @davidslee101 thanks for the data point. Yeah 4 years is good experience, enough time for someone really motivated to even get to senior level.
      In early 2021 the company I was at hired a bootcamper at 50, 6 months later took him to 80 and he still ended up leaving for >100, I want to say 120 but I don't remember for sure. But I was blown away. We spent 6 months training him then couldn't afford to keep him. Gold rush was real.

    • @dkudlay
      @dkudlay 2 месяца назад

      ⁠@@FixingSoftware4 years to senior level? Lol. The only reason people get those jobs is the same reason only 5% of men can score on dating apps and why usa will always be a racist country. Its a sick society that only has the IQ to read book covers.