C++ Software Engineer

  • Ann Arbor, MI
  • Posted 2 days ago | Updated moments ago

Overview

On Site
$74-78
Contract - W2

Skills

Staff Software Engineer

Job Details

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.
Employers have access to artificial intelligence language tools (“AI”) that help generate and enhance job descriptions and AI may have been used to create this description. The position description has been reviewed for accuracy and Dice believes it to correctly reflect the job opportunity.