What makes software development engineering

(parksb.github.io)

24 points | by ibobev 1 hour ago

9 comments

  • mikewarot 1 hour ago
    > In fact, in some Canadian provinces, titles in computing such as “software engineer,” “computer engineer,” and others containing “engineer” are (in principle) reserved for people licensed as engineers by the provincial engineering regulator.

    A most rational stance. One we should enforce here in the US.

    --

    If I were an engineer, there's no way I would trust any interface to a control system for a water purification plant that connected to the internet and allowed for ingress of control. Just as an example.

    The OPM hack of 2015[1] is the worst case, in terms of national security, that clearly proves no Engineers were involved in the design of their computer system. Ingress of control should be absolutely prohibited, and it wasn't. I don't know why that database was ever put into a computer, instead of filing cabinets in a vault, nor why it was ever connected to any other system, and not completely air-gapped in said vault, with manual controlled exfiltration of data upon request.

    [1] https://en.wikipedia.org/wiki/2015_Office_of_Personnel_Manag...

    • r_lee 57 minutes ago
      So what about like "mechanical engineers" or "process engineers" or "hardware engineer" or "biomedical engineers" etc?

      > I don't know why that database was ever put into a computer, instead of filing cabinets in a vault, nor why it was ever connected to any other system, and not completely air-gapped in said vault, with manual controlled exfiltration of data upon request.

      I suspect this is not because of the fake engineers but rather because other forces, e.g. management wanted more efficiency and security was the last item on the list. I don't see how changing job titles would change anything here

      • FabCH 29 minutes ago
        FYI: Mechanical and hardware engineers, in the appropriate language of the country, are already protected engineering titles in a lot of European countries.

        Calling yourself a „dipl. Ing. <X>“ would be a crime if you don’t possess the appropriate degree.

        • weinzierl 3 minutes ago
          Yes, but at least in Germany the "Dipl." makes the difference. I think it'd be OK to call yourself a "Software Engineer" without a degree and this is what many people do.
      • sarchertech 34 minutes ago
        I think the OP was talking about licensing and regulation. Licensed engineers have more power to push back on management. It’s not perfect but giving a licensed engineer the legal authority to say “No this isn’t safe. I won’t sign off on it.” goes a long way in the civil engineering world.
      • bluGill 33 minutes ago
        Some mechanical engineers are "professional engineers". That title is a legal liability for messing up. While most of the work designing a skyscraper belongs to any civil engineer, it won't be built until a professional engineer puts his legal mark on it being safe. In turn a professional engineer has the power and legal responsibility to tell management no and he will win against all their pressure. (though sometimes that means the company builds nothing and goes out of business forcing him to find a new job)
    • etcetcetcetceta 14 minutes ago
      oi, you got a licence for that keyboard?

      American employment licencing needs urgent review, and fewer licenced professions, not more.

    • the__alchemist 53 minutes ago
      The infrastructure-getting-hacked thing is wild to me! Something went very wrong early in the design process!
      • gumby 43 minutes ago
        SCADA (Supervisory control and data acquisition) goes back to the 50s with, yes, remote access. Security has never been a design factor (after all, how many people had mainframes in the 50s?).

        So yes, from very early in the design process.

      • r_lee 48 minutes ago
        There's internet-connected industrial control panels online where you can just connect to them on your browser or some tool and start clicking buttons.

        it's probably just convenient because there's no auth or VPNs required. yippee!

    • SenHeng 1 hour ago
      So instance of SWE1 we become SWD1. I don't see the difference.
      • embedding-shape 1 hour ago
        The difference is for others than "engineers" (software developers), where there is an expectation of certain quality when they hear someone call themselves "engineer". Just like the title "doctor" carries a certain expectation.
        • nonethewiser 21 minutes ago
          So language police.

          It seems reasonable to want licensure on the belief that it raises quality.

          It seems unreasonable to expect people to conform to your language preferences.

        • win311fwg 56 minutes ago
          "Doctor" is a funny one because physicians originally latched onto the term to try and give themselves the credibility where they previously had none. Its use in medicine is in a lot of ways similar to the software situation.
          • the__alchemist 52 minutes ago
            Barber-surgeon doesn't have the same vibe, I suppose.
    • nonethewiser 23 minutes ago
      This seems more like an argument for requiring licensure and not an argument for using the term engineer or not
  • randysalami 58 minutes ago
    I think only some software work is engineering and if I call myself a software engineer (in regard to my employment), it’s because it’s actually “a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software”. And not just paying lip service. Otherwise, I’m something else with or even without the word software in the title (even if I work with software). Outside of work, I inherently consider myself a software engine but if work requires it, I have no problems treating it as less.
  • alexjplant 17 minutes ago
    ~13 years ago I interviewed at a friend's job. They were in desperate need of discipline regarding SCM, release management, software architecture, etc. as it was largely my one friend doing everything bespoke by the seat of his pants. I used the term "software engineer" during the interview and his boss immediately decided he didn't like me because being an engineer requires licensing like a doctor and how dare I call myself that because I don't engineer and I couldn't because there was no engine for me to even be near to engineer because you have to go to school and take a very hard test to learn how to ethically knee an engine et cetera et cetera. I didn't help my case when I pointed out that a guy who wears overalls and drives trains is also an engineer and that he probably didn't graduate from some random college in Pennsyltucky either like my interviewer was conspicuously proud of having done.

    Thankfully I didn't get that job and my life trajectory continued upward. Unfortunately for that team they needed exactly what their manager was critical of - some semblance of rigor around the software they built. Of course I would indeed prefer that people who build airplanes and bridges are held to a high standard for doing their job but a person building what is essentially a glorified spreadsheet in app form might not consistently need the same.

  • reaperducer 12 minutes ago
    What makes software development engineering

    Wishful thinking and brand inflation. Same thing that makes machine learning artificial intelligence.

  • tfrancisl 40 minutes ago
    Using the engineering design process makes it engineering.
  • glenjamin 1 hour ago
    Hillel Wayne did a series of interviews with people who are considered "proper" engineers, which you can read here:

    https://www.hillelwayne.com/tags/crossover-project/

    the tl;dr is that for the most part, modern software development is very similar to engineering

  • testing22321 35 minutes ago
    My degree is Software Engineering, and is fully accredited by the Australian Institute of Engineers.

    It was two years longer than computer science, and all of those extra courses were with the “mainstream” Engineers.

  • dboreham 26 minutes ago
    Ugh. It's called engineering because in the beginning each university built or bought one computer. That machine was either owned by the mathematics department or the electrical engineering department (for hopefully obvious reasons). Fast forward a few decades and we have the twin disciplines of Computer Science and Software Engineering.
  • RunSet 1 hour ago
    I notice that software-related professions tend be named after traditionally male-dominated fields, such as "software engineer" or "software architect" or even the "rock star programmer".

    Which is strange since the original "computers" were predominately women[0] and I find writing software has much in common with activities that were historically at least coed, such as creating recipes or sewing patterns.

    Yet we never hear of "software chefs" or "software tailors". Given how little many titular heads of software companies understand their product, "software nanny" would also be applicable.

    [0] https://www.smithsonianmag.com/science-nature/history-human-...

    • necovek 47 minutes ago
      Maybe it's cultural or geographic, but both "chefs" and "tailors" is similarly male dominated here (Serbia in Europe). Out of all the professions you bring up, architects are actually pretty evenly split here.

      Obviously, what matters is where the term was coined, but I'd certainly suspect it has nothing to do with any gender bias and is instead about parallels to civil construction: architects design, engineers make it work and possible for builders to build. If anything, with LLMs, software engineers more closely match up to construction (as engineers rarely lay a single brick).