Remix.run Logo
kemiller2002 6 hours ago

Maybe back in the beginning, but I don't think it's an engineering discipline now. I don't think that's bad though. I always thought we tagged on the word "engineer" so that we could make more money. I'm ok with not being one. The engineers I've known are very strict in their approach which is good since I don't want my deck to fall down. Most of us are too risky with our approach. We love to try new things and patterns, not just used established ones over time. This is fine with me, and when we apply the term "engineer" to work, I get a little uneasy, because I think it implies us doing something that most of us really don't want to do. That is, absolutely prove our approach works and will work for years to come. Just my opinion though.

QuantumNomad_ 6 hours ago | parent | next [-]

I’ve had jobs where my title was “software engineer”, but I never refer to myself as such outside of work. When I tell others what I do, I say I am a software developer. It may seem a pointless distinction, but to me there is a distinction.

Neither myself nor the vast majority of other “software engineers” in our field are living up to what it should mean to be an “engineer”.

The people that make bridges and buildings, those are the engineers. Software engineers, for the very very most part, are not.

brightball 6 hours ago | parent | next [-]

I was won over by this distinction from another senior some years ago. I think he said…

“Developers build things. Engineers build them and keep them running.”

I like the linguistic point from a standpoint of emphasizing a long term responsibility.

chermi 5 hours ago | parent | next [-]

I was just reading "how the world became rich" and they made an interesting distinction economic "development" vs plain "growth". Amusingly, "development" to them means exactly what you're saying "engineer" should mean. It's sustainable, structural, not ephemeral. Development in the abstract hints at foundational work. Building something up to last. It seems like this meaning degradation is common in software. It still blows my mind how the "full-stack" naming stuck, for example.

https://www.howtheworldbecamerich.com/

Edit-on a related note, are there any studies on the all-in long-term cost between companies that "develop" vs. "engineer". I doubt there would be clean data since the managers that ignored all of the warning of "tech debt" would probably have the say on both compiling and releasing such data.

Does the cost of "tech-debt" decrease as the cost of "coding" decreased or is there a phase transition on the quality of the code? I bet there will be an inflection point if you plotted the adoption time of AI coding by companies. Late adapters that timed it after the models and harnesses and practices were good enough (probably still some time in the near future) would have less all-in cost per same codebase quality.

lesam 5 hours ago | parent | prev | next [-]

When your bridge falls down, you don't call an incident and ask your engineer to fix it, you sue them.

In software there's a lot more emphasis on post-hoc fixes rather than up front validation, in my experience.

yomismoaqui 5 hours ago | parent | prev [-]

I like this one from Russ Cox:

"Software engineering is what happens to programming when you add time and other programmers."

ge96 6 hours ago | parent | prev [-]

I'm similar except for me reason is no degree. So some jobs eng others just developer... although my current job I'm a "technology specialist" which is funny. But I'm getting paid so whatever.

Most recently I wrote cloudformation templates to bring up infra for AWS-based agents. I don't use ai-assisted coding except googling which I acknowledge is an ai summary.

A friend of mine is in a toxic company where everyone has to use AI and they're looked down upon if they don't use it. Every minute of their day has to be logged doing something. They're also going to lay off a bunch of people soon since "AI has replaced them" this is in the context of an agency.

bobthepanda 5 hours ago | parent | prev | next [-]

It’s a bit of a misclassification. In my mind we tend to be more like architects where there are a fair amount of innovative ideas that don’t work all that well in practice. Train stations with beautiful roofs that leak and slippery marble floors, airports with smoke ventilation systems in the floor, etc.

Of course, we use that term for something else in the software world, but architecture really has two tiers, the starchitects building super fancy stuff (equivalent to what we’d call software architects) and the much more normal ones working on sundry things like townhomes and strip malls.

That being said I don’t think people want the architecture pay grades in the software fields.

linkregister 2 hours ago | parent | prev | next [-]

It's an understandable mistake to make; culturally an engineer is defined by the building of physical objects that have extremely high reliability expectations. But "engineer" originally referred to someone who used their ingenuity to build or do things in a manner not routine or primarily physical [1]. Basically an inventor who produced. The main engineering accreditation body in the United States adds the requirement of a professional education, but it is more or less the same [2].

We're engineers.

1. https://en.wikipedia.org/wiki/Engineer#Definition

2. https://www.abet.org/accreditation/accreditation-criteria/cr...

somethingsome 5 hours ago | parent | prev | next [-]

At the same time, if you remove 'engineer' , informatics should fall under the faculty of Science, so scientists, which are even more rigorous than engineers ;)

Maybe software tinkerer?

nradov 4 hours ago | parent | next [-]

Computer Science (kind of a misnomer) should be in the faculty of Mathematics. Software Development should be in the faculty of Performing Arts. Informatics should be in the faculty of Business Administration.

bonoboTP 5 hours ago | parent | prev | next [-]

> scientists, which are even more rigorous than engineers ;)

You should see the code that scientists write...

imagetic 4 hours ago | parent [-]

This x1000000

layer8 5 hours ago | parent | prev [-]

Software craftsman seems to strike a good balance.

hackertyper69 5 hours ago | parent | prev | next [-]

It's a Systems Engineering job. You provide context, define interfaces to people, tests for critical failure modes affecting customer, describe system behavior, and translate to other people.

bdangubic 6 hours ago | parent | prev [-]

classic ... https://www.hillelwayne.com/post/are-we-really-engineers/