Hauptaufgaben
1. Analyse der Softwareanforderungen und Konzeptionierung der Softwarearchitektur
2. Entwicklung von hardwarenaher Software für Mikrocontroller, Algorithmen für Sensorik, Regelungs- und Antriebstechnik und Schnittstellen zur Kommunikation
3. Firmware-/Softwareprogrammierung in C und C++ und weiteren gängigen Programmiersprachen
4. Entwicklung und Durchführung von Firmware-/Softwaretests auf Modul-, Integrations- und Systemtestebene
5. Selbständige Abstimmung der Softwarearchitektur mit dem jeweiligen Produkt-/Projekt Management oder dem Systemarchitekten
6. Abstimmung von Softwareanforderungen mit Lieferanten für elektronischen Zukaufteilen
7. Erstellung fachbezogener Kundenpräsentationen sowie deren Vorstellung und Abstimmung mit dem Kunden und weiteren Stakeholdern
8. Durchführung von Code-Reviews, kontinuierliche Optimierungen sowie Erstellung der entwicklungsbegleitenden Softwaredokumentation
9. Mitwirkung beim Auf- und Ausbau der Prozesse, Werkzeugketten und Datenbanken für die Softwareentwicklung
10. Interne und externe Abstimmung von Softwaretests
Fachliche/persönliche Voraussetzungen
11. Abgeschlossenes technisches Fach-/Hochschulstudium mit Schwerpunkt Elektrotechnik oder Embedded Systems oder Informatik oder Nachrichtentechnik
12. Sehr gute Kenntnisse in der C/C++ Programmierung für die Embedded Systems, Erfahrungen in dem Bereich - auch in der Umsetzung nach A-SPICE.
13. Erfahrungen im Umgang mit Microcontroller. Verständnis von Compilern und µC-Architekturen
14. Erfahrungen im Bereich der CAN-Kommunikation und Implementierung ( SAE J1939, ISO11898, …)
15. Erfahrungen im Bereich der Diagnoseprotokolle und den gängigen Tools wie z.B., ISO14229, ISO15765, CANoe, CANalyzer, …
16. Erfahrungen im Umgang mit gängigen Entwicklungsumgebungen wie z.B. Bitbucket, Jenkins, Tessy, CodeSonar, GIT, SVN, Doxygen, …
17. Erfahrungen in Entwicklung funktional sicherheitsrelevanter Software, Safety&Security, ASIL, HaRa, TaRa,
18. Strukturierte, verlässliche, selbständige, kommunikative und verantwortungsbewusste Arbeitsweise
19. Verständnis für die Auswirkungen von Designentscheidungen (HW/SW) in Bezug auf Qualität und Zuverlässigkeit
20. Basiskenntnisse in UML, GIT, Jira, Doxygen und Jenkins
21. Erfahrungen/Kenntnisse in klassischem AUTOSAR und verwandten SW-Komponenten sowie in der ECU-SW-Entwicklung.
22. Erfahrungen im Bereich modellbasierter Softwareentwicklung und SIL
23. Kenntnisse im Bereich agiler IT-Arbeitsmethoden und -Tools (z. B. SCRUM, DevOps, SRE, Softwareentwicklung mit CI/CD-Pipeline, Jira & Confluence)
24. Lösungsorientiertes Denken und Handeln, sowie Verhandlungssichere Deutsch- und Englischkenntnisse
25. Interkulturelle Kompetenz