C++ Software Engineer
Job description
Company is helping our client find a Staff Software Engineer to join its team and play a key role in designing, developing, and scaling advanced automotive software solutions.
In this role, you’ll lead architectural decisions, collaborate closely with cross-functional teams, and deliver high-quality software used to validate and integrate ADAS systems in simulated and real-world environments. You’ll serve as a technical leader and subject matter expert, helping shape product direction and ensure successful customer deployments.
The ideal candidate is an experienced software engineer with deep C++ expertise, strong architectural judgment, and a passion for automotive systems and mobility innovation.
As a Staff Software Engineer, you’ll:
- Collaborate with cross-functional teams to define system architectures and design software solutions tailored to customer and automotive domain requirements.
- Provide technical leadership across the software development lifecycle, from concept and design through deployment and support.
- Integrate customer ADAS software stacks with Arene validation products and connect solutions to internal and external vehicle and environment simulation platforms.
- Design and implement modular, scalable C++ solutions to test and validate virtual ECUs.
- Serve as a subject matter expert across Arene product offerings, providing technical consultation and supporting successful customer outcomes.
- Create and maintain clear documentation, including architectural diagrams, technical specifications, and best practices.
- Identify process improvement opportunities and contribute to scalable, maintainable software systems.
Ideal candidate profile
PREFERRED QUALIFICATIONS
Experience with Advanced Driver-Assistance Systems (ADAS) development.
Knowledge of automotive software architectures like AUTOSAR (Classic and/or Adaptive).
Experience with in-vehicle infotainment (IVI) systems.
Familiarity with software safety standards, particularly ISO 26262.
Experience with performance optimization of embedded systems.
Proficiency with modern software development tools, including Git, JIRA, and Jenkins.
A passion for the automotive industry and a desire to shape the future of mobility.
Daily tasks
RESPONSIBILITIES:
Solution Design: Collaborate with cross-functional teams to define architectures and design software solutions tailored to meet the specific needs of our customers at company and in the automotive field.
Technical Leadership: Provide technical guidance throughout the software development lifecycle, from concept to deployment, ensuring the delivery of high quality solutions.
Integration: Integrate customer ADAS software stacks with Arene validation products. Integrate products with internal and external vehicle and environment simulation programs..
Create solutions in C++ to test and validate virtual ECU’s in a modular and scalable way.
Documentation: Create and maintain comprehensive documentation, including architectural diagrams, technical specifications, and best practices, to facilitate knowledge sharing and project scalability.
Be a subject matter expert across our Arene Product offerings providing expert consultation and support to clients, addressing technical challenges and ensuring successful project delivery
Required skills
MINIMUM QUALIFICATIONS
Architect and Design: Lead the architectural design and development of complex software components for automotive systems, ensuring scalability, performance, and reliability.
C++ Development: Write clean, efficient, and maintainable code in modern C++ (C++11/14/17/20) for embedded systems and automotive platforms.
Technical Leadership: Provide technical guidance and mentorship to a team of software engineers, fostering a culture of innovation and excellence.
System Integration: Collaborate with cross-functional teams, including hardware engineering, systems engineering, and quality assurance, to ensure seamless integration of software components.
Problem Solving: Analyze and resolve complex software defects and performance issues in a timely and efficient manner.
Process Improvement: Contribute to the continuous improvement of our software development processes and practices, including advocating for and implementing best practices in areas such as code reviews, testing, and CI/CD.
Automotive Standards: Ensure that software development adheres to automotive industry standards and best practices, including functional safety (ISO 26262) and AUTOSAR.