Ausbildung & Qualifikation Du verfügst über ein abgeschlossenes Studium der Informatik, technischen Informatik, Data Science, Mathematik, Physik, Elektrotechnik oder einer vergleichbaren technischen Fachrichtung.
Berufserfahrung Du verfügst über mindestens drei Jahre Berufserfahrung in der professionellen Softwareentwicklung und hast bereits an umfangreicheren Softwareprojekten mitgewirkt.
Dein Schwerpunkt liegt auf der Entwicklung anspruchsvoller Software in C++. Zusätzlich hast Du praktische Erfahrung mit datengetriebenen Anwendungen, mathematischen Algorithmen, Signalverarbeitung oder Machine Learning gesammelt.
Du bist es gewohnt, Aufgaben von der Analyse und Konzeption über die Implementierung bis hin zu Integration, Test und Optimierung eigenständig zu bearbeiten.
Technische Kompetenzen Du besitzt sehr gute Kenntnisse in modernem C++, vorzugsweise ab C++17, und bist mit objektorientierter und modularer Softwareentwicklung, Multithreading, Ressourcenverwaltung sowie der Entwicklung robuster Anwendungen vertraut.
Du hast Erfahrung mit der Entwicklung und Implementierung von Algorithmen zur Daten- oder Signalverarbeitung und verfügst über ein gutes Verständnis mathematischer und statistischer Methoden.
Du verfügst über praktische Kenntnisse im Bereich Machine Learning und kennst grundlegende Verfahren beispielsweise aus den Bereichen Klassifikation, Regression, Anomalieerkennung oder Zeitreihenanalyse.
Für Datenanalyse, Prototyping und Machine Learning kannst Du sicher mit Python und typischen Bibliotheken wie NumPy, SciPy, pandas, scikit-learn, PyTorch oder TensorFlow arbeiten.
Du hast Erfahrung mit Datenbanken, Backend-Diensten und APIs und kannst Messdaten, Analyseergebnisse, Konfigurationen und historische Informationen strukturiert verarbeiten, speichern und bereitstellen.
Automatisierte Unit-, Komponenten-, Integrations- und Regressionstests sind Dir vertraut. Außerdem beherrschst Du den Umgang mit Versionsverwaltung und modernen Buildsystemen.
Du bist in der Lage, komplexe technische Aufgabenstellungen eigenständig zu analysieren, geeignete Lösungsansätze zu bewerten und diese in wartbare und produktionsreife Software zu überführen.
Persönliche Stärken Du arbeitest analytisch, strukturiert und eigenverantwortlich. Komplexe technische und mathematische Fragestellungen motivieren Dich ebenso wie die Entwicklung nachhaltiger Softwarelösungen.Du hinterfragst Ergebnisse kritisch und kannst sowohl Software als auch Algorithmen anhand geeigneter Kriterien bewerten und verbessern.
Ein hoher Qualitätsanspruch, Teamgeist und die Motivation, innovative Hightech-Produkte aktiv mitzugestalten, zeichnen Dich aus.
Sprachkenntnisse Sehr gute Deutschkenntnisse oder muttersprachliche Deutschkenntnisse sowie sehr gute Englischkenntnisse in Wort und Schrift sind aufgrund der engen Zusammenarbeit innerhalb unserer Entwicklungs- und Fachabteilungen zwingend erforderlich.
Wünschenswerte Zusatzqualifikationen Idealerweise verfügst Du bereits über Erfahrungen in einem oder mehreren der folgenden Bereiche:
- Signalverarbeitung und Analyse realer Messdaten
- Zeitreihenanalyse und statistische Datenanalyse
- Predictive Maintenance oder Condition Monitoring
- Elektrochemische Impedanzspektroskopie (EIS)
- Physikalische Modellierung oder elektrochemische Systeme
- Energietechnik, Brennstoffzellen oder Wasserstofftechnologien
- Optimierung rechenintensiver Algorithmen
- MLOps und Versionierung bzw. Deployment von Machine-Learning-Modellen
- Docker oder vergleichbare Containertechnologien
- Continuous Integration und automatisierte Build- und Testprozesse
- Linux als Entwicklungs- oder Zielplattform
- Entwicklung von Software für Messgeräte, Prüfstände oder industrielle Systeme
- Grundkenntnisse hardwarenaher Kommunikation und industrieller Schnittstellen
- Kenntnisse in Embedded-Systemen, Echtzeitsystemen oder CAN/CAN-FD