Was ist der Unterschied zwischen einem Softwareentwickler, einem Softwareprogrammierer und einem Softwareingenieur? [abgeschlossen]

Ich bin seit zwei Jahren in der IT-Branche als „Associate Software Developer“ tätig. Bei Bewerbungen auf neue Stellen habe ich Berufsbezeichnungen wie „Softwareentwickler“, „Softwareprogrammierer“ und „Softwareingenieur“ gesehen, aber die Anforderungen scheinen oft fast identisch zu sein. Gibt es einen Unterschied zwischen den mit diesen Berufsbezeichnungen verbundenen Rollen?

Nach meiner Erfahrung bedeuten die Begriffe dasselbe und werden synonym verwendet.
Manchmal hat ein Programmierer ein etwas niedrigeres Gehalt als ein Entwickler/Ingenieur, aber es hat wahrscheinlich mehr mit dem Unternehmen zu tun als mit der üblichen Praxis. Vielleicht hat das mit weniger Verantwortlichkeiten zu tun oder dass der Job reiner Codierung ist - keine Kundenmeetings, Anforderungserfassung oder ähnliches - während ein Entwickler/Ingenieur diese Aktivitäten zusätzlich zur Codierung ausführen könnte.
Abgesehen von den rechtlichen Implikationen verrät es normalerweise, wie das Unternehmen die Menschen sieht. Im weiteren Sinne ist es etwas, das Sie verwenden können, um ein Gefühl dafür zu bekommen, was die Unternehmenskultur ist. Dies ist natürlich nur ein Indikator unter vielen anderen.
Diese Frage scheint nicht zum Thema zu gehören, da es um Terminologie geht. Die Unterscheidung zwischen diesen Begriffen ist subjektiv und willkürlich.
Schauen Sie sich diese Antworten an: english.stackexchange.com/a/27299/14671

Antworten (2)

Es ist möglich, dass ein bestimmtes Unternehmen diese Titel verwendet, um unterschiedliche Bedeutungen zu haben und verschiedene Positionen innerhalb dieses Unternehmens zu beschreiben.

Aber ich glaube nicht, dass es eine klare Unterscheidung zwischen ihnen gibt, die in verschiedenen Unternehmen üblich ist.

Ich persönlich habe alle drei Titel "Entwickler", "Programmierer" und "Ingenieur" in verschiedenen Berufen gehabt, in denen es um die Programmierung von Software ging. Es gab keinen Zusammenhang zwischen den unterschiedlichen Titeln und der unterschiedlichen Arbeit, die ich in diesen Jobs leistete.

Betonen Sie die Titel nicht zu sehr, schauen Sie sich nur die tatsächlichen Anforderungen und die tatsächlichen Stellenbeschreibungen an.

Bearbeiten: Wie in den Kommentaren erwähnt, hat der Titel "Ingenieur" in einigen Ländern Bedeutung, z. B. Finnland (danke Juha) und Kanada (danke Dogbert). Es ist nicht der Fall, wo ich bin (Australien), noch scheint es in den USA oder im Vereinigten Königreich der Fall zu sein, wo es eine Implikation von höherer Bildung oder Fachwissen geben kann, aber ich denke nicht mehr als eine Implikation.

Ingenieur bezieht sich normalerweise auf einen juristischen Titel, der nach dem Abschluss eine Art Prüfung erfordert (zumindest in einigen Ländern). Daher ist ein Softwareingenieur rechtlich gesehen ein Softwareentwickler, aber das Gegenteil muss nicht der Fall sein. Keine Ahnung, ob die USA eine solche Unterscheidung haben, oder ob sie berücksichtigt wird.
@Bakuriu In Großbritannien glaube ich nicht, dass Sie irgendeine Qualifikation haben müssen, um sich selbst als Ingenieur zu bezeichnen. Es ist ein Zankapfel für diejenigen von uns, die ein Ingenieurstudium abgeschlossen haben ...
In Finnland heißt es in einem Ingenieurdiplom ausdrücklich (übersetzt): "Mit Erhalt dieses Diploms haben Sie das Recht , den Titel ______ Ingenieur zu führen". Betonung von mir.
In den USA war meine Position einst "Systemprogrammierer", während ich Webanwendungsentwickler war. Titel haben wenig Bedeutung, es sei denn, ein einzelnes Unternehmen verwendet mehr als einen. Dann haben Sie beim Vorstellungsgespräch eine gute Frage: „Was ist in Ihrem Unternehmen der Unterschied zwischen X und Y?“
@JuhaUntinen: Was wird anstelle des _______ gesetzt? So etwas wie den akademischen Grad?
@ORMapper: „Elektro“, „IT“, „Maschinenbau“, „Chemie“ und so weiter, je nach Studiengang.
Während „Ingenieur“ in den USA tendenziell einen formelleren Bildungshintergrund impliziert, gibt es eine tatsächliche schriftliche Anforderung dafür nur dann, wenn Sie ein „Certified Professional Engineer“ sind, was bedeutet, dass Sie eine Prüfung wie die von erwähnte bestanden haben @Bakuriu
@Liath Ja, ich glaube, British Gas schickt Ingenieure, um Ihren Kessel zu überprüfen, und wenn sie Probleme haben, rufen sie einen Techniker an (offensichtlich ein prestigeträchtigerer Titel). Ich habe gehört, wenn Sie einen Doktortitel in Ingenieurwesen haben, verstärkt dieser Titel nur das Elend des kaputten Kessels. Ich möchte meinen nichtssagenden (aber immer noch recht netten) Titel "Softwareberater" in das Getümmel einbringen.
Obwohl die Unterscheidung im Laufe der Zeit verschwommen sein mag, habe ich, als ich aufs College ging, "Software Engineering" studiert, was bedeutete, dass man Kurse in formaler Softwarestrukturierung, komplexen Softwaresystemen (Betriebssystemen usw.) belegen und Labore zur Entwicklung von Software belegen musste in Teams und Nutzung von Modulen anderer Teams. Um Software Engineer zu werden, musste man den Abschluss haben. Ein "Programmierer" zu sein, könnte nur bedeuten, dass Sie sich selbst beigebracht haben, wie man Excel-VB-Skripte schreibt, oder es könnte mehr als das bedeuten. Es ist ein allgemeinerer Begriff, aber in Bezug auf die erforderlichen Anmeldeinformationen enger gefasst.
Es ist illegal, „Ingenieur“ in Ihrer Berufsbezeichnung oder „Engineering“ in Ihrem Firmennamen in Kanada zu verwenden, es sei denn, Ihr dienstältester Ingenieur oder diejenigen, die das Produkt abzeichnen, sind registrierte Professional Engineers (P.Eng.). apeg.bc.ca/Für-Mitglieder/Professionelle-Praxis/…
@Dogbert Cheers, habe bearbeitet, um Kanada neben Finnland als ein Land zu erwähnen, in dem "Ingenieur" eine echte Bedeutung hat

Theoretisch wäre Entwicklung der gesamte Prozess von der Aufnahme der Anforderungen über die Planung des Projekts bis zu seiner Ausführung, während das Engineering das technische Design der Software plant und die Programmierung die Ausführung dieser Designs ist.

Aber in der Praxis gibt es kaum einen Unterschied zwischen diesen Titeln. In der realen Welt kann von einer Person mit einer dieser Berufsbezeichnungen erwartet werden, dass sie den gesamten Umfang einer Softwareentwicklung abdeckt oder nur ein Code-Affe ist. Der „Senior Software Developer“ in Unternehmen A hat möglicherweise noch weniger Verantwortung als der „Junior Programmer“ in Unternehmen B.

Um zu erfahren, welche Art von Arbeit eine Stelle tatsächlich beinhaltet, lesen Sie zwischen den Zeilen der eigentlichen Stellenbeschreibung und welche Fähigkeiten dort als erforderlich angegeben sind. Oder noch besser: Fragen Sie sie.

+1: Ich stimme zu. Tatsächlich ist der Begriff „Softwareprogrammierer“, wie er auf diese Rollen angewendet wird, meistens nicht mehr als ein Beweis dafür, dass das obere Management keine Ahnung hat, was Softwareentwicklung eigentlich beinhaltet.