Software Engineering is closer to Computer Science than to actual Engineering. It does involve some engineering problems and solutions, but overall, it mostly is programming. Even if you check university courses, the CS and SE content are pretty much the same with little differences between them.
Most software development is making things that are either useless or outright harmful to society, and it’s not nearly as high skilled or intelligent work as people make it out to be. It is not a respectable job, despite what techbros would like you to believe.
Many software developers/programmers call themselves “engineers” as they seem to see themselves on the same level as real Engineers. In my opinion, this stems from their feelings of class inferiority and a belief that since they make similar levels of income to engineers and make complex “things” that they are deserving of the title. To me, this is the purest expression of wanting to be labor aristocrats.
They are not engineers because:
They do not design things that human life/safety is dependent on. Yes, there are some software applications in medical and other fields that do, but generally the vast majority of these people are not “designing” things of that nature. On that note
There are no hard set principles or rules that developers must follow to uphold the first point. Yes, there are some guidelines that they generally follow, but compared to real Engineers, it’s most a free for all. And on that note…
Real Engineers must be cognizant of consequences of the failure of their designs at all times. There are strict bodies that regulate design and to even become an Engineer, you must have guidance and approval of other Engineers to be considered someone who can work independently. If a bridge falls because of poor Engineering, the Engineer and their firm will face consequences and can have their licenses revoked. Yes, some developers have been sued for shoddy coding or breach of contract, but this doesn’t stop them from continuing to work in the field beyond simply having a poor reputation.
In Canada, the regulator of Alberta recently ruled that software developers are not engineers. Not that the bougie govt of Alberta is good in any way, it makes my point. It’s mostly just classism. And no, I’m not a developer or an engineer and nor are my family. So you if you see someone claiming to be a “Software Engineer” or similar, they’re really just a grifter. You might as well just call gardeners “plant engineers”, novelists “writing engineers”, or painters “art engineers”.
These are good points, but I think they’re one-sided.
There clearly is a prestige factor in the label, ‘engineer’. But I would argue that being a member of the labour aristocracy is defined by ones relation to the means of production, not one’s job title. A software developer earning six figures is in the labour aristocracy whatever their title. An engineer on anything up to 60k will be proletariat or labour aristocracy depending on other social factors and their country of residence regardless of whether they’re called an engineer.
I would also strongly challenge the idea that ‘real engineers’, by which you seem to mean civil or structural engineers, are cognisant of the consequences of their failures, and that software developers are not.
Part of my objection would be to the implied meaning of ‘failure’. For example, an engineer could be involved in a new bridge that encourages car use and discourages mass transportation. I would say that’s a failure of the highest order, even if nobody drives off the bridge because the engineer remembered the safety barriers.
A second part of my objection would be to the idea that engineers do act to avoid health and safety failures of the type that you seem to be referring to. Engineers would have been involved in the decisions relating to adding inflammable cladding on Grenfell Tower, maintaining the train tracks in Ohio, indeed every other industrial disaster (asbestos, Bhopal, Rana Plaza, Champasak, etc), building on land that is essential to biodiversity, building hostile cities that preclude public gatherings, building oil pipelines, working out how small developers can build rooms and how little soundproofing they get away with, building multi-lane super highways, Boeing airplanes that fall mysteriously out the sky, plumbing systems that must be replaced every so many years, producing ‘effective’ nuclear weapons, etc. These are just a few examples.
The point is that engineers are culpable in all the harms of capitalism to the extent that they accept the logic of capitalism and/or do nothing to challenge that logic in their work. To put these types of engineers above software developers on the basis of stricter regulation seems to distort the reality and accept bourgeois reasoning.
A third part of my objection would be in the association between ‘engineer’ and ‘health and safety’ in the negative sense to suggest that software developers are not engineers because they are not concerned with health and safety. If the people who design the software inside cars, planes, elevators, medical equipment, ovens, microwaves, etc, fuck up, then they are going to prison. And they’ll struggle to get another job in the same area afterwards.
There’s maybe an argument that someone who e.g. makes game apps is not an engineer, but I’d have to be persuaded. Any argument in that vein would have to make similar distinctions between ‘real engineers’ and those ‘real engineers’ who work on, let’s say, ‘frivolous’ projects like sound engineers in the film or music industry. It seems problematic to define a category of work based on what some people will apply their knowledge to.
There is also an industry of people who call themselves story engineers, although they are referring to a specific role in the writing process. This suggests some common agreement that engineer can be acceptably applied even outside the category ‘real engineers’. And although I doubt anyone seriously calls themselves a painting engineer who ‘merely’ applies paint, the people who work with the pigments, anticoagulation elements, VOC release, etc, probably could call themselves paint engineers.
I think I’m arguing that the definition of engineer cannot be determined by the difference between the tangible and the intangible (which seems to be implied in your comment).
Not really sure if I would agree with this statement. At least in my experience, a software engineer is someone who designs how systems should operate, as opposed to software developers that actually program the software. In my part of the world, titles like software engineer and software architects are basically used interchangeably. It is not really trying to be an engineer, but rather description that it is someone who designs something or engineer solution to something.
I think you are too focused on one meaning of the word engineering. In general terms, I would describe it as applying scientific and mathematics to solve a problem. And I can only speak for myself, I know quite a lot of software engineers and I don’t think I’ve ever seen them comparing to an engineer. I don’t think software engineers are higher or lower or something, they just do different things.
Although I will be the first to admit that IT in general often contains lots of ancaps, cryptobros, etc.
In my opinion, this stems from their feelings of class inferiority and a belief that since they make similar levels of income to engineers and make complex “things” that they are deserving of the title.
they’re linguists but instead of translating and interpreting things and discovering cool history in language, they build apps to destroy entire job sectors and tell self-driving cars to only avoid white ppl
don’t even get me started on software “engineers”
Let’s get you started. What’s the beef?
Software Engineering is closer to Computer Science than to actual Engineering. It does involve some engineering problems and solutions, but overall, it mostly is programming. Even if you check university courses, the CS and SE content are pretty much the same with little differences between them.
So? Does it make it simple somehow?
Complicated =/= engineering
It is still a difficult and (I’d argue) equally respectable job tho
Most software development is making things that are either useless or outright harmful to society, and it’s not nearly as high skilled or intelligent work as people make it out to be. It is not a respectable job, despite what techbros would like you to believe.
t. Software “”“engineer”“”
What a hot take, Christ almighty
undefined> outright harmful
lol wut
Useless or harmful, not useless therefore harmful.
Lmao Pandora’s Box has been opened😂💀
Lemmygrad is an anti-programmer space now lol
Lemmygrad version 0.18.0, smoke signals edition
We’re all just tech bro losers that only create evil things apparently
Edit: evil or useless things***
Many software developers/programmers call themselves “engineers” as they seem to see themselves on the same level as real Engineers. In my opinion, this stems from their feelings of class inferiority and a belief that since they make similar levels of income to engineers and make complex “things” that they are deserving of the title. To me, this is the purest expression of wanting to be labor aristocrats.
They are not engineers because:
In Canada, the regulator of Alberta recently ruled that software developers are not engineers. Not that the bougie govt of Alberta is good in any way, it makes my point. It’s mostly just classism. And no, I’m not a developer or an engineer and nor are my family. So you if you see someone claiming to be a “Software Engineer” or similar, they’re really just a grifter. You might as well just call gardeners “plant engineers”, novelists “writing engineers”, or painters “art engineers”.
These are good points, but I think they’re one-sided.
There clearly is a prestige factor in the label, ‘engineer’. But I would argue that being a member of the labour aristocracy is defined by ones relation to the means of production, not one’s job title. A software developer earning six figures is in the labour aristocracy whatever their title. An engineer on anything up to 60k will be proletariat or labour aristocracy depending on other social factors and their country of residence regardless of whether they’re called an engineer.
I would also strongly challenge the idea that ‘real engineers’, by which you seem to mean civil or structural engineers, are cognisant of the consequences of their failures, and that software developers are not.
Part of my objection would be to the implied meaning of ‘failure’. For example, an engineer could be involved in a new bridge that encourages car use and discourages mass transportation. I would say that’s a failure of the highest order, even if nobody drives off the bridge because the engineer remembered the safety barriers.
A second part of my objection would be to the idea that engineers do act to avoid health and safety failures of the type that you seem to be referring to. Engineers would have been involved in the decisions relating to adding inflammable cladding on Grenfell Tower, maintaining the train tracks in Ohio, indeed every other industrial disaster (asbestos, Bhopal, Rana Plaza, Champasak, etc), building on land that is essential to biodiversity, building hostile cities that preclude public gatherings, building oil pipelines, working out how small developers can build rooms and how little soundproofing they get away with, building multi-lane super highways, Boeing airplanes that fall mysteriously out the sky, plumbing systems that must be replaced every so many years, producing ‘effective’ nuclear weapons, etc. These are just a few examples.
The point is that engineers are culpable in all the harms of capitalism to the extent that they accept the logic of capitalism and/or do nothing to challenge that logic in their work. To put these types of engineers above software developers on the basis of stricter regulation seems to distort the reality and accept bourgeois reasoning.
A third part of my objection would be in the association between ‘engineer’ and ‘health and safety’ in the negative sense to suggest that software developers are not engineers because they are not concerned with health and safety. If the people who design the software inside cars, planes, elevators, medical equipment, ovens, microwaves, etc, fuck up, then they are going to prison. And they’ll struggle to get another job in the same area afterwards.
There’s maybe an argument that someone who e.g. makes game apps is not an engineer, but I’d have to be persuaded. Any argument in that vein would have to make similar distinctions between ‘real engineers’ and those ‘real engineers’ who work on, let’s say, ‘frivolous’ projects like sound engineers in the film or music industry. It seems problematic to define a category of work based on what some people will apply their knowledge to.
There is also an industry of people who call themselves story engineers, although they are referring to a specific role in the writing process. This suggests some common agreement that engineer can be acceptably applied even outside the category ‘real engineers’. And although I doubt anyone seriously calls themselves a painting engineer who ‘merely’ applies paint, the people who work with the pigments, anticoagulation elements, VOC release, etc, probably could call themselves paint engineers.
I think I’m arguing that the definition of engineer cannot be determined by the difference between the tangible and the intangible (which seems to be implied in your comment).
Not really sure if I would agree with this statement. At least in my experience, a software engineer is someone who designs how systems should operate, as opposed to software developers that actually program the software. In my part of the world, titles like software engineer and software architects are basically used interchangeably. It is not really trying to be an engineer, but rather description that it is someone who designs something or engineer solution to something.
While I can’t speak for everyone, it’s been my experience that software engineer and software developer are synonymous.
So… you could say they “develop” designs. Until they start giving out rings for them, they’re grifters in my eyes.
I think you are too focused on one meaning of the word engineering. In general terms, I would describe it as applying scientific and mathematics to solve a problem. And I can only speak for myself, I know quite a lot of software engineers and I don’t think I’ve ever seen them comparing to an engineer. I don’t think software engineers are higher or lower or something, they just do different things.
Although I will be the first to admit that IT in general often contains lots of ancaps, cryptobros, etc.
Silent watchmaker anguish noises
they’re linguists but instead of translating and interpreting things and discovering cool history in language, they build apps to destroy entire job sectors and tell self-driving cars to only avoid white ppl
Can open, worms, everywhere.
No regrets