• d41@startrek.website
    link
    fedilink
    English
    arrow-up
    25
    ·
    9 months ago

    I have the words “software engineer” in my job title but I hate it.

    We aren’t engineers, we’re a bunch of undisciplined hackers, engineers have standards and ethics.

    Programmer is my preferred term, or software developer.

    Code monkey is also acceptable.

    • rimjob_rainer@discuss.tchncs.de
      link
      fedilink
      arrow-up
      26
      ·
      9 months ago

      Depends. I’ve studied for my engineering title, I have standards and ethics. Requirements, specification, design, architecture, programming, testing, integration, delivery, everything is part of my job. If you are a programmer, you only do programming.

      • AggressivelyPassive@feddit.de
        link
        fedilink
        arrow-up
        6
        ·
        9 months ago

        Yeah, that’s bullshit.

        Look at the state of software in the world. Even for Boeing standards, most software is abysmal. You can have personal standards all you want, if business daddy wants to deliver untested crap, I might object, but I can’t stop it and it’s usually not a hill I would want to die on.

        • merc@sh.itjust.works
          link
          fedilink
          arrow-up
          10
          ·
          9 months ago

          I might object, but I can’t stop it

          I’d argue that if you seriously consider yourself a software engineer, and you take the “engineer” part seriously, you should be quitting and blowing the whistle if that happens. If you just go along with it, then sure, you’re not an engineer.

          • AggressivelyPassive@feddit.de
            link
            fedilink
            arrow-up
            2
            ·
            9 months ago

            Sure, and go where else exactly?

            The entire industry works on shipping duct taped products.

            I do have my standards, but there’s a point at which you have to say “it’s good enough”. If someone’s at risk of dying or being harmed, yeah, that’s a real problem. If the application keeps crashing and loses the business money, that’s not my problem, I can only notify my superiors about my concerns.

          • ArmokGoB@lemmy.dbzer0.com
            link
            fedilink
            arrow-up
            2
            ·
            9 months ago

            Dude, you’re living in fantasy land if you’re being serious. Engineers build all types of shoddy and dangerous crap just because they’re being paid to do it. Most of weapons manufacturing is mech eng. Almost no one is gonna quit their job over some ethical dispute, even if it’s costing lives.

        • rimjob_rainer@discuss.tchncs.de
          link
          fedilink
          arrow-up
          5
          ·
          edit-2
          9 months ago

          That’s why I said it depends. If a billion dollar company decides to cut costs even more to gain more and more profits, they hire an army of codemonkeys in India and that is what you get.

          If you work at a mid sized company interested in sustainable growth, you might get a software engineering position where you are the business daddy and if you say “I won’t deliver that untested” then it won’t be delivered untested.

          I’m working at a company in Germany and we are leading in our field. I have one boss and he listens to what I tell him because he doesn’t have a clue about software engineering and that’s what he hired me and my team for.

          Look into Agile, servant leadership and new work (the real stuff and not the garbage “hip” companies want to make you believe) if you want to understand.

          It’s the old principles that kill companies like Boeing, because they think they can make big profits like it’s 1984 solely by pumping money into an army of wage slaves.

          • AggressivelyPassive@feddit.de
            link
            fedilink
            arrow-up
            1
            ·
            9 months ago

            Look into “how a company works”, because that directly works against anything you say.

            Not that I disagree with your ambition, I would like to only ship tested code. But if you’re working with deadlines and fixed budgets, that’s often enough impossible. I can’t even get a proper specification out of my clients, and even if they do, it’ll change in a week. You can be as agile as you want, if money runs out, there’s not much you can do.

    • Socsa@sh.itjust.works
      link
      fedilink
      arrow-up
      3
      ·
      9 months ago

      But then it all circles back around. I have advanced degrees in (non software) engineering from actual top tier engineering schools and I should not be trusted to write production code. That’s what software engineers are for.

      • merc@sh.itjust.works
        link
        fedilink
        arrow-up
        5
        ·
        9 months ago

        I disagree with that. I mean, I don’t know how good you are at writing software, so maybe you shouldn’t be allowed anywhere near production code. But, just because code is “production” doesn’t mean it should exclusively be the domain of people who are “software engineers”.

        In my mind, software engineering involves implementing new algorithms that are from a computer science paper you just read, or architecting a big and complex system. Or, if there are lives on the line. I’d want people writing code for a new Space Shuttle to think of themselves as engineers, not just code monkeys.

        But, a self-taught developer is fine to update production code for a web app as long as they write the correct tests and get it peer reviewed.

    • Semi-Hemi-Lemmygod@lemmy.world
      link
      fedilink
      English
      arrow-up
      2
      ·
      9 months ago

      My doctor’s digital prescription service has been ransomwared. It’s been a few weeks, and they paid the millions of dollars in Bitcoin or whatever, but it’s still encrypted and my doctor had to write me a prescription on paper.

      The fact that a digital prescription service could have that happen is madness to me. The fact that they don’t have offline backups for prescriptions is insane. Yes, they could have been in there for a while, encrypting everything, but if the company had tested its backups they’d have found out immediately.

      All of these are things that wouldn’t have happened if computing professions were held to standards.

      • merc@sh.itjust.works
        link
        fedilink
        arrow-up
        2
        ·
        9 months ago

        if computing professions were held to standards.

        Ok, sure. What standards? For fields like Civil Engineering it’s pretty easy to come up with reasonable standards. But, if a software engineer is writing a generic key-value store, how do you evaluate whether that item meets the required standards?

        • Semi-Hemi-Lemmygod@lemmy.world
          link
          fedilink
          English
          arrow-up
          1
          ·
          9 months ago

          There are things that a developer can and should check to make sure his code is secure, but my focus is mainly on the systems and those can definitely be held to standards. Things like checking dependencies for known exploits, enforcing 2FA and TLS on all connections, encrypting data at rest, and testing backups, among a lot of other stuff.

          I’ve worked with hundreds of organizations across many different industries in my career and almost none of them do all or even most of those, even if they need to be compliant for things like HIPAA or SOX. I once worked with an aerospace company whose sysadmin/webmaster/network guy was literally the founder’s son, who got the job because he knew how to make a web page.

    • ChickenLadyLovesLife@lemmy.world
      link
      fedilink
      English
      arrow-up
      1
      ·
      9 months ago

      I’ve been a programmer my whole career, but some years ago my then-employer gave me the actual title of “visionary”. This caused me to immediately lose the respect of my coworkers, and after a few months it was obvious my employer was just preparing to get rid of me and replace me with H-1Bs.