Senior C++ Software Engineer

Senior C++ Software Engineer

Vollzeit 90000 - 110000 € / Jahr (geschätzt) Vor Ort
J

Auf einen Blick

  • Aufgaben: Entwickle moderne Softwarelösungen mit C++ für intelligente Verkehrssysteme und Robotik.
  • Unternehmen: Innovatives Unternehmen in der Schweiz mit Fokus auf fortschrittliche Technologien.
  • Vorteile: Flexible Arbeitszeiten, wettbewerbsfähiges Gehalt und individuelle Karriereentwicklung.
  • Weitere Informationen: Tolle Möglichkeiten zur beruflichen Weiterentwicklung und Teilnahme an technischen Gemeinschaften.
  • Warum dieser Job: Gestalte die Zukunft des Verkehrs mit modernster Technologie und arbeite an spannenden Projekten.
  • Qualifikationen: Mindestens 5 Jahre Erfahrung in der Softwareentwicklung mit C++ und ROS2.

Das prognostizierte Gehalt liegt zwischen 90000 - 110000 € pro Jahr.

Diese Position wird im Auftrag eines Partnerunternehmens ausgeschrieben, das alle Bewerbungen und nächsten Schritte verwaltet. Unser Partner sucht einen Senior C++ Software Engineer mit Sitz in der Schweiz. Treten Sie einem innovativen Ingenieurprojekt bei, das sich auf die Entwicklung fortschrittlicher eingebetteter Sichtsysteme und intelligenter Verkehrsmanagementlösungen konzentriert. In dieser Rolle entwerfen und bauen Sie leistungsstarke Softwarekomponenten mit Modern C++ innerhalb einer ROS2-basierten Architektur. Sie tragen zu einer anspruchsvollen Sensorfusionsplattform bei, die entwickelt wurde, um komplexe Verkehrs- und Kreuzungsszenarien zu bewältigen, bei denen Zuverlässigkeit, Präzision und Echtzeitleistung entscheidend sind. Gemeinsam mit erfahrenen Entwicklern, Architekten und technischen Stakeholdern helfen Sie, die Softwarearchitektur zu gestalten und skalierbare, wartbare Lösungen zu liefern. Diese Gelegenheit kombiniert herausfordernde Systemprogrammierung mit praktischen Anwendungen in Robotik, eingebetteten Systemen und intelligenter Verkehrstechnologie. Sie haben auch die Autonomie, technische Verbesserungen voranzutreiben, Ihr Fachwissen zu teilen und die Entwicklung anderer Ingenieure zu unterstützen.

Verantwortlichkeiten

  • Softwareentwicklung: Entwerfen, entwickeln und warten Sie Kernanwendungskomponenten mit Modern C++ (C++17/20) innerhalb einer etablierten ROS2-basierten Architektur.
  • Sensorintegration: Integrieren Sie mehrere Sensoren, externe Schnittstellen und Drittanbieterkomponenten in eine komplexe eingebettete Sicht- und Sensorfusionsplattform.
  • Verteilte Systemtechnik: Erstellen Sie komponentenbasierte Anwendungen mit Publish/Subscribe (pub/sub)-Mustern und nachrichtenbasierter Kommunikation zur Unterstützung eines zuverlässigen Datenaustauschs über verteilte Systeme.
  • Architektur und technisches Design: Tragen Sie zu Softwarearchitektur- und Designentscheidungen bei, bewerten Sie technische Alternativen und implementieren Sie wiederverwendbare, skalierbare und wartbare Lösungen.
  • Softwarequalität und Testing: Entwickeln und pflegen Sie Unit- und Integrationstests zur Validierung der Funktionalität, Verbesserung der Zuverlässigkeit und Gewährleistung der Systemstabilität.
  • Leistungsoptimierung: Identifizieren Sie Engpässe und optimieren Sie die Laufzeitleistung, den Speicherverbrauch, die Parallelität und die Ressourcennutzung in leistungs-kritischen Anwendungen.
  • Debugging und Fehlersuche: Untersuchen und lösen Sie komplexe Softwareprobleme in Linux-Umgebungen mithilfe von Debugging-, Profiling- und Leistungsanalysetools.
  • Entwicklungsumgebungsmanagement: Pflegen Sie Container-Images, Docker-Konfigurationen und Build-Umgebungen für Entwicklungs- und Zielplattformen.
  • Code-Reviews und technische Zusammenarbeit: Nehmen Sie an Code-Reviews teil, geben Sie konstruktives Feedback und arbeiten Sie mit Entwicklern, Architekten und Projektstakeholdern zusammen, um hohe Ingenieurstandards aufrechtzuerhalten.
  • Technische Führung und Mentoring: Übernehmen Sie Verantwortung für komplexe Entwicklungsaufgaben, tragen Sie zur technischen Entscheidungsfindung bei und führen Sie weniger erfahrene Ingenieure durch Wissensaustausch und Mentoring.
  • Kontinuierliche Verbesserung: Identifizieren Sie Möglichkeiten zur Verbesserung von Entwicklungsabläufen, Softwarequalität, Systemzuverlässigkeit und Ingenieurpraktiken im gesamten Projekt.

Anforderungen

  • Berufserfahrung: Mindestens 5 Jahre Berufserfahrung in der Softwareentwicklung mit fundierter Expertise in C++ und der Entwicklung komplexer Softwaresysteme.
  • Moderne C++-Expertise: Fortgeschrittene Kenntnisse in C++17/20, einschließlich Speicherverwaltung, Multithreading, Parallelität und leistungs-kritischer Programmierung.
  • ROS2 und Robotik: Praktische Erfahrung in der Entwicklung robotischer Anwendungen mit ROS2, einschließlich Verständnis seiner Architektur, Komponenten und Kommunikationsmechanismen.
  • Sensorintegration: Praktische Erfahrung in der Integration mehrerer Sensoren in komplexe Softwaresysteme, vorzugsweise im Bereich eingebetteter Sicht, Robotik oder Sensorfusion.
  • Verteilte und komponentenbasierte Systeme: Solides Verständnis verteilter Architekturen, komponentenbasierter Softwaregestaltung und pub/sub- oder nachrichtenbasierter Kommunikationsmuster.
  • Softwarearchitektur: Fundierte Kenntnisse der Prinzipien des Softwaredesigns, bewährter Verfahren in der Architektur und Ansätze zum Aufbau wartbarer und wiederverwendbarer Anwendungen.
  • Testing und Qualitätssicherung: Erfahrung in der Gestaltung und Implementierung von Unit- und Integrationstests für zuverlässige, produktionsreife Software.
  • Linux-Entwicklung: Starke Erfahrung in der Arbeit in Linux-Umgebungen, einschließlich Debugging, Profiling, Leistungsanalyse und Fehlersuche.
  • Versionskontrolle und Zusammenarbeit: Kenntnisse in Git und kollaborativen Softwareentwicklungsabläufen, einschließlich Code-Reviews und gemeinsamer Entwicklungspraktiken.
  • Containerisierung: Praktische Erfahrung mit Docker und containerisierten Entwicklungs- und Build-Umgebungen.
  • Analytische und Problemlösungsfähigkeiten: Starke analytische Denkweise, systematische Debugging-Fähigkeiten und die Fähigkeit, herausfordernde technische Probleme eigenständig zu lösen.
  • Verantwortung und Kommunikation: Fähigkeit, Verantwortung für komplexe Ingenieuraufgaben zu übernehmen, informierte technische Entscheidungen zu treffen, effektiv zusammenzuarbeiten und klar auf Englisch zu kommunizieren.

Nice to Have:

  • Erfahrung in der Entwicklung von ROS2-Knoten und der Verwendung von Python für Werkzeuge, Tests oder nicht-kritische ROS2-Komponenten.

Zusätzliche Vorteile:

  • Vertrautheit mit Yocto, Embedded Linux, Kubernetes, Helm, CI/CD-Pipelines wie Jenkins oder GitLab CI, Echtzeitbetriebssystemen und Konzepten der Echtzeitprogrammierung.
  • Fachkenntnisse: Erfahrung mit Konzepten des maschinellen Lernens für Wahrnehmung und Entscheidungsfindung oder frühere Arbeiten im Bereich Verkehrsmanagement, Verkehrsüberwachung oder Verkehrsüberwachungssysteme wären von Vorteil.

Vorteile:

  • Flexible Arbeitsbedingungen: Wählen Sie zwischen Remote-, Büro- oder flexiblen Arbeitsformaten, abhängig von den Anforderungen der Rolle und des Standorts.
  • Wettbewerbsfähige Vergütung: Erhalten Sie ein wettbewerbsfähiges Gehalt und ein umfassendes Vergütungspaket.
  • Personalisierte Karriereentwicklung: Zugang zu Karrieremöglichkeiten, die auf Ihre beruflichen Ziele und technischen Interessen zugeschnitten sind.
  • Professionelle Lernmöglichkeiten: Profitieren Sie von Mentorenprogrammen, technischen Vorträgen, Schulungen und Kompetenzzentren.
  • Wissensaustauschgemeinschaften: Nehmen Sie an aktiven technischen Gemeinschaften teil, die Zusammenarbeit, Wissensaustausch und kontinuierliches Lernen fördern.
  • Bildungsunterstützung: Zugang zu Bildungsrückerstattungen zur Unterstützung der laufenden beruflichen Entwicklung.
  • Mitarbeiteranerkennung: Erhalten Sie Jubiläumsgeschenke und Anerkennung wichtiger beruflicher Meilensteine.
  • Teambildungsaktivitäten: Nehmen Sie an Unternehmensveranstaltungen und Teamaktivitäten teil, die darauf abzielen, professionelle Beziehungen zu stärken.
  • Zusätzliche lokale Vorteile: Zugang zu standortspezifischen Vorteilen, abhängig von der jeweiligen Beschäftigungsvereinbarung.

Wie Jobgether funktioniert:

Wir verwenden einen KI-gestützten Matching-Prozess, um sicherzustellen, dass Ihre Bewerbung schnell, objektiv und fair anhand der Kernanforderungen der Rolle überprüft wird. Unser System identifiziert die am besten passenden Kandidaten, und diese Shortlist wird dann direkt mit dem einstellenden Unternehmen geteilt. Die endgültige Entscheidung und die nächsten Schritte (Interviews, Bewertungen) werden von ihrem internen Team verwaltet. Wir schätzen Ihr Interesse und wünschen Ihnen viel Erfolg!

Warum über Jobgether bewerben?

Datenschutz-Hinweis: Durch die Einreichung Ihrer Bewerbung erkennen Sie an, dass Jobgether Ihre personenbezogenen Daten verarbeitet, um Ihre Eignung zu bewerten und relevante Informationen mit dem einstellenden Arbeitgeber zu teilen. Diese Verarbeitung basiert auf berechtigtem Interesse und vorvertraglichen Maßnahmen gemäß den geltenden Datenschutzgesetzen (einschließlich DSGVO). Sie können Ihre Rechte (Zugriff, Berichtigung, Löschung, Widerspruch) jederzeit ausüben.

Senior C++ Software Engineer Arbeitgeber: Jobgether

Unser Partnerunternehmen bietet eine hervorragende Arbeitsumgebung für Produktmanager, die in einem dynamischen und internationalen Umfeld tätig sein möchten. Mit flexiblen, vollständig remote Arbeitsmöglichkeiten und Zugang zu urbanen Büros in Paris, Lille oder London fördert das Unternehmen Innovation und Zusammenarbeit. Zudem werden umfassende Gesundheits- und Rentenpläne sowie kontinuierliche Entwicklungsmöglichkeiten geboten, um sicherzustellen, dass Mitarbeiter in ihrer Karriere wachsen und sich wohlfühlen.

J

Kontaktdaten:

Jobgether Recruiting-Team

StudySmarter Expertenrat🤫

Wir sind der Meinung, dass du so Senior C++ Software Engineer erhalten könntest

✨Engagier dich in Entwickler-Communities!

Lass uns mal ehrlich sein: In der Software-Entwicklung sind Netzwerke Gold wert! Tummel dich in GitHub-Projekten, nehme an lokalen Meetups oder Hackathons teil und vernetze dich mit anderen Entwicklern. So steigerst du nicht nur deine Sichtbarkeit, sondern lernst auch die neuesten Trends und Technologien kennen.

✨Zeig deine Fähigkeiten!

Erstelle ein Portfolio, das deine besten Projekte und Code-Examples zeigt. Nichts überzeugt mehr als ein praktischer Beweis deiner Skills. Das kann auch helfen, bei Jobgether anzuklopfen, wenn du dich auf die Stelle als Senior C++ Software Engineer bewirbst – so wissen sie gleich, was sie von dir erwarten können!

✨Nutze Jobplattformen speziell für Tech-Jobs!

Plattformen wie Stack Overflow Jobs oder AngelsList sind perfekte Orte, um Vollzeitstellen in der Software-Entwicklung zu finden. Hier sind viele tolle Unternehmen auf der Suche nach Talenten wie uns, also schau regelmäßig vorbei und bewirb dich direkt über die Website.

✨Such dir Mentoren und Feedback!

Hol dir Feedback von erfahrenen Entwicklern, die dir Tipps geben können, was Recruiter wirklich suchen. Ob über LinkedIn oder persönliche Kontakte: Menschen, die sich in der Branche auskennen, können enorm wertvoll sein, um dir zu helfen, dich optimal auf deine Bewerbung bei Jobgether vorzubereiten!

Wir glauben, dass du diese Fähigkeiten brauchst, um Senior C++ Software Engineer mit Bravour zu bestehen

C++17/20
ROS2
Embedded Systems
Sensor Integration
Distributed Systems Engineering
Software Architecture
Unit Testing

Einige Tipps für deine Bewerbung 🫡

Highlights deiner Coding-Skills:In der Software-Entwicklung kommt es auf konkrete Fähigkeiten an. Vergiss nicht, relevante Programmiersprachen und Frameworks in deinen Lebenslauf aufzunehmen. Zeig uns, was du kannst – vielleicht mit einem Link zu deinem GitHub-Profil oder einer Übersicht deiner Side Projects, die deine Programmierkenntnisse illustrieren.

Dokumentation deiner Erfolge:Gerade bei einer Vollzeitstelle in der Software-Entwicklung sind konkrete Ergebnisse Gold wert. Nenn uns Zahlen und Ergebnisse aus deinen vorherigen Projekten. Hast du den Code optimiert oder Systemfehler behoben? Solche Erfolge zeigen, dass du die Sprache der Entwickler sprichst und einen echten Mehrwert bringst.

Attraktive Projektbeschreibungen:Wenn du an Projekten gearbeitet hast, die hervorstechen, beschreibe sie ausführlich in deinem Lebenslauf. Was war das Problem, das du gelöst hast? Welche Technologien hast du eingesetzt? Das gibt uns einen klaren Einblick in deine Herangehensweise und Problemlösungsfähigkeiten.

Motivation zeigen:In deinem Anschreiben solltest du deine Motivation für die Stelle im Bereich Software-Entwicklung bei Jobgether klar herausstellen. Warum sprichst gerade du die Anforderungen für diese Vollzeitrolle an? Mach deutlich, was dich an der Arbeit bei uns reizt und wie du über das rein Technische hinaus wachsen möchtest.

Wie man sich auf ein Vorstellungsgespräch bei Jobgether vorbereitet

✨Technische Vorbereitung auf die Coding-Challenges

In der Software-Entwicklung sind technische Fragen oft ein zentraler Teil des Interviews. Macht euch mit Plattformen wie LeetCode oder HackerRank vertraut, um eure Problemlösungsfähigkeiten zu trainieren. Zeigt im Interview viel Selbstbewusstsein beim Erklären eurer Ansätze!

✨Das eigene Portfolio im besten Licht präsentieren

Stellt sicher, dass ihr ein aussagekräftiges Portfolio habt, das einige eurer besten Projekte zeigt. Seid bereit, darüber zu sprechen, was eure Rolle war, welche Technologien ihr verwendet habt und welche Herausforderungen es gab. Das gibt den Interviewern einen Einblick in eure praktische Erfahrung.

✨Teamfähigkeit und Kommunikation betonen

In einer Vollzeit-Position wird Kommunikation im Team sehr wichtig sein. Seid bereit, Beispiele aus der Vergangenheit zu teilen, in denen ihr effektiv im Team gearbeitet habt. Dies zeigt, dass ihr nicht nur technische Fähigkeiten habt, sondern auch gut ins Team passt.

✨Vorbereitung auf Fragen zur Software-Architektur

Bereitet euch darauf vor, Fragen zur Software-Architektur zu beantworten. Themen wie RESTful APIs, Microservices und Cloud-Architekturen können Teil eures Interviews sein. Zeigt euer Verständnis durch Diskussionen und Beispiele aus eurer bisherigen Arbeit oder Projekte.