Somewhat disagree.Her's my take on this - copied from an earlier post...
"Honestly... all these are fancy titles at the whims and the preferences of the employers. I would guess probably more than 90% of the so called Software Engineers are nothing but Programmers or Software Developers.
A Software Engineer should have a Degree in Engineering with training and in many countries you are legally required to have an Engineering degree to hold the title. That's what makes them different. They are the ones who have the overall responsibility for the big picture of the system.
A Programmer often is a person who has a Bachelors Degree in Computer Science.
However, to become a clever Programmer you don't need anything other than an innate skill and abilities in programming."
PS: Not every software project is a piece of software engineering. For example take the instance of the development of the autonomous (self-driving) car.
That's just one of the complex cases of software engineering.
Real software engineering encompasses the development of the system using engineering principles, whereas a developer creates functional software. There's a difference between the two.![]()
Programmer/Developer is the first step in the software engineering world. Even so-called Engineers didn't start their careers by engineering a complex system. In the software world, any graduate has to start at a programmer/developer level. Later on, after getting a lot of knowledge about different software systems, they can design/engineer a system. The end product doesn't have to be a physical thing, right? It can be a complex virtual system. Think bank to a bank transaction system. A lot of effort needs to be put on to design such a system.
I am trying to say that even a software developer can be an Engineer who can design a complex system after getting enough experience and knowledge.


