"Real" vs "software" engineers; essay with many words, no resolution.
guigirl last edited by
As a retired professional mechanical ungenour, i have long looked askance at all the 1s & 0s people who self-describe as "software engineers". I've always just bitten my tongue.
What are your thoughts?
nomadic last edited by
@guigirl As someone looking for a mechanical enginee
eering job (
how many e's was it again? all I know is that there are a bunch of 'em) in a field filled with programming positions, I do find the use of software engineering a bit annoying.
I will see a nice big number of jobs listed in the Engineering category only to find them all filled with full stack this, Android/IOS that.
[W]e use things like “programmer”, “software engineer”, and “software developer” interchangeably. What is the difference between a software engineer and a software developer?
This is the main part of the argument I normally focus on. There are just too many words already being used to describe people coding professionally or as a hobby.
In discussions with other people studying computer science, the title programmer seems to imply some lower standard as opposed to developer/ software engineer. Like the electrician to electrical engineer example. I personally don't take issue with calling myself a programmer, but maybe that is just me being influenced by my "real" engineering mind.
Somewhat elitist programmers also find that the term web developers has poisoned the title developers for usage as an overarching label for all people that code since the HTML and CSS parts are not really code. It just seems silly.
The way I would categorize the different levels/areas of computer science would be this:
- Programmer - Someone just doing coding at a somewhat basic level, maybe only as a part of their job rather than exclusively coding or even as just a hobby.
- Software Developer - Someone working with coding as a major part of their job. For all the people mixed up in Agile frameworks and that understand what Scrum means.
- Computer Scientist - Someone doing the hard math side of computer science. The study of logic and ever more optimized algorithms that have a strong basis in math.
Software Engineer is a fine title to use in my book, but companies, please separate the more classical engineering and the software engineering jobs. It is just a more confusing experience for everyone.
A mechanical engineer might be able to work in an aeronautical or electrical engineering role, but if the degree required embedded programming course for mechanical engineers at the college I attended was anything to go by, you don't want a MechE even thinking about touching a single line of your company's code.
Catweazle last edited by
sgunhouse last edited by
I should mention, there are many kinds of engineer that don't require advanced degrees. Train engineers, anyone whose job really is literally operating an engine of some type.
Not sure how EEs, MEs got to be called "engineers" in the first place - what type of engine is it they operate? Before he retired, my dad's job title was "Senior Test Engineer" (he was the guy who made sure those ICs worked properly before they were shipped out the door) - was his test equipment considered an engine?
My university runs an software engineering course.
It is exactly the same as the computer science course, but with a mandatory work experience and an extra semester of courses, with 2 mandatory courses that are not available to the regular computer scientists.
It can't be the work experience that makes you an engineer, or else every one would automatically become an engineer the moment they get a job after leaving.
One mandatory course is one where you attend lectures from industry (not necessarily engineers) and write essays about professional development. Maybe being an engineer is being able to present and sell yourself in a business environment, but that doesn't sound right.
The other of the mandatory courses is a "master class" where the aim is for the student to give a class to teach others about a novel concept. Maybe being an engineer is having the ability to explain and teach others about your expertise as you practice it.
Catweazle last edited by Catweazle
@sgunhouse , in Spanish the thing is clearer, 'Engine' is translated 'Máquina' -'Maschine '. 'Engineer' translates to 'Ingeniero', or "Maquinista" -Mechanical Engineer". 'Engine' is not necessarily synonymous with M'aschine ',' Engine 'is rooted in the Latin word' Ingenium ' (See Wiki)
Engineer therefore can be someone who develops any ingenuity, which can also be software.. That there is this confusion is a problem of English, not of the meaning of the word.
I should mention, there are many kinds of engineer that don't require advanced degrees.
It depends of your country.
A person who operates an engine may be an an engineer in US and Canada, but in Europe (and elsewhere) is just a mechanic: an engineering degree is required to be an engineer.
guigirl last edited by
This post is deleted!