Softwareentwickler/-innen konzipieren, betreiben oder optimieren Softwarelösungen und Systemsoftware oder passen bereits vorhandene Standardsoftware an individuelle Erfordernisse an. Im Rahmen von Systementwürfen analysieren sie zunächst die bestehende IT-Infrastruktur, ermitteln spezifische Anforderungen oder den konkreten Änderungsbedarf und erstellen eine Leistungsbeschreibung mit den Anforderungen an die neue Software. Anforderungsmodelle und Systemdesigns überprüfen sie auf Korrektheit, Eindeutigkeit und Vollständigkeit sowie auf Realisierbarkeit der Systemanforderungen – insbesondere hinsichtlich Sicherheit und Leistung. Sie spezifizieren die softwaretechnischen Details und legen die Schnittstellen zu anderen Komponenten und Systemen fest. Vor Beginn der eigentlichen Programmierarbeit entwerfen sie ggf. Algorithmen, also methodische Rechenverfahren zur Lösung einer vorgegebenen Aufgabe oder eines Problems. Auf dieser Basis planen und konzipieren sie dann einzelne Softwarebausteine, setzen diese zusammen und bringen sie zum Laufen. Softwareentwickler/-innen sollten über Kenntnisse in Software Development Kits (SDK) verfügen und in jedem Fall Programmiersprachen beherrschen. Im Bereich der App- und Webentwicklung arbeiten sie eng mit Grafik– bzw. Web- oder Screendesignern/-innen zusammen. Am Ende der Entwicklungsphase führen sie Tests durch, beheben Fehler und wirken bei der Systemintegration mit. Softwareentwickler/-innen sollten über ein hohes Abstraktionsvermögen und einen scharfen analytischen Verstand verfügen.
- für die Weiterbildung eine Ausbildung zum/zur Fachinformatiker/-in oder mathematisch-technischen Softwareentwickler/-in oder
- im akademischen Bereich alle Studiengänge der Informatik