„Softwareentwickler“ – Versionsunterschied
[ungesichtete Version] | [gesichtete Version] |
Keine Bearbeitungszusammenfassung Markierungen: Zurückgesetzt Visuelle Bearbeitung |
|||
(29 dazwischenliegende Versionen von 21 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
Ein '''Softwareentwickler''' ({{enS| |
Ein '''Softwareentwickler''' ({{enS|software developer}}) ist eine Person, die an der Erstellung einer [[Software]] mitwirkt. Der Begriff ist nicht scharf definiert. |
||
Die konkreten Aufgaben eines Softwareentwicklers richten sich nach der [[Rolle (Workflow)|Rolle]], die er im Softwareentwicklungsteam einnimmt. Die bekannteste Rolle ist hierbei die des Programmierers. Umgangssprachlich wird zwischen den Begriffen „Programmierer“ und „Softwareentwickler“ oft nicht unterschieden. |
Die konkreten Aufgaben eines Softwareentwicklers richten sich nach der [[Rolle (Workflow)|Rolle]], die er im Softwareentwicklungsteam einnimmt. Die bekannteste Rolle ist hierbei die des '''Programmierers'''. Umgangssprachlich wird zwischen den Begriffen „Programmierer“ und „Softwareentwickler“ oft nicht unterschieden. |
||
Man verdient 3000 bis 4000 irgentwas euro. |
|||
== Rollen und Aufgaben == |
== Rollen und Aufgaben == |
||
Ein Softwareentwickler kann eine oder mehrere Rollen ausfüllen.<ref name="sotypen">{{Internetquelle |url=https://www.stackoverflowbusiness.com/hubfs/content/de/Basiswissen%20Entwicklertypen.pdf |titel=Basiswissen: Entwicklertypen |titelerg=Die 12 häufigsten Entwicklertypen und ihre Skillsets im Überblick. |hrsg=[[Stack Overflow (Website)|Stack Overflow]] Business |format=PDF |sprache=de | archiv-url=https://web.archive.org/web/20170410214402/https://www.stackoverflowbusiness.com/hubfs/content/de/Basiswissen%20Entwicklertypen.pdf |archiv-datum=2017-04-10 |zugriff=2022-03-03}}</ref> Dies hängt von der Größe des Teams und der Organisation des [[ |
Ein Softwareentwickler kann eine oder mehrere Rollen ausfüllen.<ref name="sotypen">{{Internetquelle |url=https://www.stackoverflowbusiness.com/hubfs/content/de/Basiswissen%20Entwicklertypen.pdf |titel=Basiswissen: Entwicklertypen |titelerg=Die 12 häufigsten Entwicklertypen und ihre Skillsets im Überblick. |hrsg=[[Stack Overflow (Website)|Stack Overflow]] Business |format=PDF |sprache=de | archiv-url=https://web.archive.org/web/20170410214402/https://www.stackoverflowbusiness.com/hubfs/content/de/Basiswissen%20Entwicklertypen.pdf |archiv-datum=2017-04-10 |zugriff=2022-03-03}}</ref> Dies hängt von der Größe des Teams und der Organisation des [[Vorgehensmodell zur Softwareentwicklung|Softwareentwicklungsprozesses]] ab. Allen Rollen gemein ist, dass Softwareentwickler Software entwickeln oder [[Softwarewartung|warten]], also [[Programmcode]] schreiben oder verändern. Softwareentwickler können aber je nach Ausbildung und Erfahrung auch Rollen einnehmen, in denen vorrangig andere Tätigkeiten gemacht werden müssen, wie [[Anforderungsmanagement]], [[Softwarearchitektur]], [[Softwaretest]] und Qualitätssicherung, [[Systemadministration]] oder [[Projektmanagement]]. In der [[Agile Softwareentwicklung|agilen Softwareentwicklung]] werden cross-funktionale, selbstorganisierte Teams eingesetzt, Softwareentwickler übernehmen dabei alle zuvor genannten Tätigkeiten. |
||
Neben den oben genannten Tätigkeiten gehören auch das Design der [[Benutzerschnittstelle]], Entwicklung von [[Algorithmus|Algorithmen]] und [[Mathematisch-technischer Softwareentwickler|mathematischen Berechnungsmodellen]] oder die Analyse von [[Altsystem]]en zu typischen Aufgaben von Softwareentwicklern. |
Neben den oben genannten Tätigkeiten gehören auch das Design der [[Benutzerschnittstelle]], Entwicklung von [[Algorithmus|Algorithmen]] und [[Mathematisch-technischer Softwareentwickler|mathematischen Berechnungsmodellen]] oder die Analyse von [[Altsystem]]en zu typischen Aufgaben von Softwareentwicklern. |
||
== Softwarestack == |
== Softwarestack == |
||
Softwareentwickler können durch den [[Softwarestack]] auf den sie ausgebildet sind unterschieden werden. Häufig spielt hierbei die Schicht eines Stacks eine wichtige Rolle für die Abgrenzung. Es wird unterschieden zwischen [[Frontend und Backend|''Frontend'']], [[Frontend und Backend|''Backend'']] und ''Full-Stack''.<ref>{{Internetquelle |url=https://www.computerweekly.com/de/definition/Software-Stack |titel=Software-Stack |sprache=de |abruf=2023-04-16}}</ref> Frontend-Entwickler beschäftigen sich mit den Schnittstellen für die Nutzer eines Dienstes (Internetseiten, Apps etc.), häufig sind hier Kenntnisse von [[Html|HTML]], [[Cascading Style Sheets|CSS]], [[JavaScript]] und [[JavaScript Object Notation|JSON]] gefragt. Backend-Entwickler sind hingegen auf die serverseitige Programmierung spezialisiert. Diese umfasst häufig Skriptsprachen wie [[PHP]], [[Python (Programmiersprache)|Python]] und [[Ruby (Programmiersprache)|Ruby]]. Full-Stack-Entwickler wenden Kenntnisse aus dem Frontend- als auch dem Backend-Bereich an. |
|||
{{Belege fehlen|1=}} |
|||
Softwareentwickler werden weiter unterschieden durch den [[Softwarestack]], auf den sie ausgebildet sind. Da für viele Stacks eine jahrelange Ausbildung und Erfahrung benötigt wird, und verschiedene Stacks gegebenenfalls auch unterschiedliche Persönlichkeitstypen ansprechen, ist ein Wechsel zwischen unterschiedlichen Stacks nur vereinzelt möglich. |
|||
== Berufsbezeichnung == |
== Berufsbezeichnung == |
||
Zeile 30: | Zeile 27: | ||
== Siehe auch == |
== Siehe auch == |
||
* [[IT-Beruf]] |
|||
* [[Anwendungsprogrammierer]]<!-- eigentlich sinngleich (oder wenigstens sehr ähnlich) --> |
* [[Anwendungsprogrammierer]]<!-- eigentlich sinngleich (oder wenigstens sehr ähnlich) --> |
||
* [[Mort, Elvis, Einstein]] – verkörpern bei Microsoft drei sehr verschiedene Typen von Softwareentwicklern |
* [[Mort, Elvis, Einstein]] – verkörpern bei Microsoft drei sehr verschiedene Typen von Softwareentwicklern |
||
Zeile 53: | Zeile 51: | ||
<references> |
<references> |
||
<ref name="inggbay">{{Internetquelle |
<ref name="inggbay">{{Internetquelle |
||
|url= |
|url=https://www.gesetze-bayern.de/Content/Document/BayIngG2016 |
||
|titel=Gesetz zum |
|titel=Bayerisches Gesetz zum Schutz der Berufsbezeichnung Ingenieurin und Ingenieur |
||
|titelerg=Ingenieurgesetz – |
|titelerg=Bayerisches Ingenieurgesetz – BayIngG |
||
⚫ | |||
|format=PDF |
|||
⚫ | |||
|kommentar=Ingenieurgesetz von Bayern |
|||
}}</ref> |
}}</ref> |
||
</references> |
</references> |
Aktuelle Version vom 12. November 2024, 01:05 Uhr
Ein Softwareentwickler (englisch software developer) ist eine Person, die an der Erstellung einer Software mitwirkt. Der Begriff ist nicht scharf definiert.
Die konkreten Aufgaben eines Softwareentwicklers richten sich nach der Rolle, die er im Softwareentwicklungsteam einnimmt. Die bekannteste Rolle ist hierbei die des Programmierers. Umgangssprachlich wird zwischen den Begriffen „Programmierer“ und „Softwareentwickler“ oft nicht unterschieden.
Rollen und Aufgaben
[Bearbeiten | Quelltext bearbeiten]Ein Softwareentwickler kann eine oder mehrere Rollen ausfüllen.[1] Dies hängt von der Größe des Teams und der Organisation des Softwareentwicklungsprozesses ab. Allen Rollen gemein ist, dass Softwareentwickler Software entwickeln oder warten, also Programmcode schreiben oder verändern. Softwareentwickler können aber je nach Ausbildung und Erfahrung auch Rollen einnehmen, in denen vorrangig andere Tätigkeiten gemacht werden müssen, wie Anforderungsmanagement, Softwarearchitektur, Softwaretest und Qualitätssicherung, Systemadministration oder Projektmanagement. In der agilen Softwareentwicklung werden cross-funktionale, selbstorganisierte Teams eingesetzt, Softwareentwickler übernehmen dabei alle zuvor genannten Tätigkeiten.
Neben den oben genannten Tätigkeiten gehören auch das Design der Benutzerschnittstelle, Entwicklung von Algorithmen und mathematischen Berechnungsmodellen oder die Analyse von Altsystemen zu typischen Aufgaben von Softwareentwicklern.
Softwarestack
[Bearbeiten | Quelltext bearbeiten]Softwareentwickler können durch den Softwarestack auf den sie ausgebildet sind unterschieden werden. Häufig spielt hierbei die Schicht eines Stacks eine wichtige Rolle für die Abgrenzung. Es wird unterschieden zwischen Frontend, Backend und Full-Stack.[2] Frontend-Entwickler beschäftigen sich mit den Schnittstellen für die Nutzer eines Dienstes (Internetseiten, Apps etc.), häufig sind hier Kenntnisse von HTML, CSS, JavaScript und JSON gefragt. Backend-Entwickler sind hingegen auf die serverseitige Programmierung spezialisiert. Diese umfasst häufig Skriptsprachen wie PHP, Python und Ruby. Full-Stack-Entwickler wenden Kenntnisse aus dem Frontend- als auch dem Backend-Bereich an.
Berufsbezeichnung
[Bearbeiten | Quelltext bearbeiten]Die Berufsbezeichnung Softwareentwickler ist in Deutschland und Österreich keine geschützte Berufsbezeichnung.
Die Berufsbezeichnung Softwareingenieur darf nach deutschem Recht nur führen, wer ein technisches Studium mit Erfolg abgeschlossen hat.[k 1][3] In Österreich kann der Ingenieurstitel auch durch die Ausbildung an einer HTL erworben werden.
Ausbildung und Studium
[Bearbeiten | Quelltext bearbeiten]Softwareentwickler haben oft ein Studium in einem Informatikstudiengang an einer Hochschule oder einer Berufsakademie absolviert. Auch ein Studium in einem ingenieur- bzw. naturwissenschaftlichen Studiengang bietet Einstiegsmöglichkeiten in die Softwareentwicklung. Des Weiteren gibt es die Möglichkeit, sich über eine Ausbildung in einem informationstechnischen Ausbildungsberuf z. B. zum Fachinformatiker für Anwendungsentwicklung an einer Berufsfachschule (siehe beispielsweise IHK), an einer Fachschule für Datenverarbeitung und Organisation (z. B. Akademie für Datenverarbeitung Böblingen) oder einem Berufskolleg zum Softwareentwickler oder Softwarearchitekten zu qualifizieren.
Seit 2007 gibt es in Deutschland die staatlich anerkannte Ausbildung zum Mathematisch-technischen Softwareentwickler, die aus dem Mathematisch-Technischen Assistenten hervorging. In Aachen, Köln und Jülich ist die Kombination der Ausbildung mit dem Bachelorstudiengang „Scientific Programming“ möglich.
Daneben üben viele Quereinsteiger diese Tätigkeit auch aufgrund von autodidaktisch erlernten oder durch verschiedene Schulungen (auch Umschulung) erworbenen Fähigkeiten aus.
Siehe auch
[Bearbeiten | Quelltext bearbeiten]- IT-Beruf
- Anwendungsprogrammierer
- Mort, Elvis, Einstein – verkörpern bei Microsoft drei sehr verschiedene Typen von Softwareentwicklern
- Online-Community#Entwickler-Community
Literatur
[Bearbeiten | Quelltext bearbeiten]- Gerald M. Weinberg: Die Psychologie des Programmierers. mitp, Bonn 2004, ISBN 3-8266-1465-8.
Weblinks
[Bearbeiten | Quelltext bearbeiten]Kommentare
[Bearbeiten | Quelltext bearbeiten]- ↑ Siehe Gesetz zum Schutze der Berufsbezeichnung „Ingenieur und Ingenieurin“ (Ingenieurgesetz – IngG), das in der Gesetzgebungskompetenz der Bundesländer liegt und für das jeweilige Bundesland in der geltenden Fassung heranzuziehen ist. Um die Bezeichnung „Ingenieur“ zu tragen, muss man das Studium nicht zwingend als „Ingenieur“ abschließen. Aus dem Gesetz des Bundeslandes Bayern geht zum Beispiel hervor, dass es für die Berufsbezeichnung „Ingenieur“ ausreicht, wenn man ein mindestens dreijähriges Studium in einer technischen oder naturwissenschaftlichen Fachrichtung mit Erfolg abgeschlossen hat.
Einzelnachweise
[Bearbeiten | Quelltext bearbeiten]- ↑ Basiswissen: Entwicklertypen. (PDF) Die 12 häufigsten Entwicklertypen und ihre Skillsets im Überblick. Stack Overflow Business, archiviert vom am 10. April 2017; abgerufen am 3. März 2022.
- ↑ Software-Stack. Abgerufen am 16. April 2023.
- ↑ Bayerisches Gesetz zum Schutz der Berufsbezeichnung Ingenieurin und Ingenieur. Bayerisches Ingenieurgesetz – BayIngG. Abgerufen am 26. April 2023.