Aeva’s mission is to bring the next wave of perception to a broad range of applications from automated driving to industrial robotics, consumer electronics, consumer health, security, and beyond. Aeva is transforming autonomy with its groundbreaking sensing and perception technology that integrates all key LiDAR components onto a silicon photonics chip in a compact module. Aeva 4D LiDAR sensors uniquely detect instant velocity in addition to 3D position, allowing autonomous devices like vehicles and robots to make more intelligent and safe decisions.
Role Overview:
We are looking for a C++ Software Engineer who has experience in developing large software applications. You will work towards a common goal of getting our production codebase compliant with various security/safety standards required to ship the product. This person will also work on various C++ infrastructure features.
What you'll do:
Develop software working on Linux as well as real-time operating systems (QNX, FreeRTOS, etc.) Develop software working on a distributed and heterogeneous system (across multiple processors/ECUs)
Develop necessary tools to support development, debugging, and testing
Assist in software design and code reviews while assisting other developers on technical issues, design choices, and decision making
Analysis of requirements, architecture, design, development, code review, quality assurance, and deployment of entire software engineering life cycle
Work closely with other development and cross-functional team members
What you have:
B.S. in Computer Science, Software Engineering, or a related field
7+ years of experience with developing embedded system software from requirements into a functional, efficient, and validated implementation
Strong C++ programming skills
Experience in developing/optimizing multi-threaded code running on multiple cores
Experience in message passing between threads as well as data communication over external interfaces like CAN, Ethernet
Experience in automotive or robotics software development
Experience in ROS/ROS2 or similar software development
Experience in software development for ARM SoCs
Experience in using C/C++ performance/benchmarking tools such as perf, gperf, valgrind, etc.
Familiar with the embedded software development environment
Familiar with software development on Linux, RTOS(QNX, FreeRTOS, etc.)
Working knowledge of automotive communication protocols (CAN, Ethernet, etc.)
Ability to work in a fast-paced development environment
Good team player with great communication skills
Passionately motivated to take ideas from the R&D phase to a product
Software Development life cycle experience, from requirements gathering through to implementation and maintenance.
Familiarity with MISRA/ISO26262/CERT Standards
Familiarity with code compliance tools such as Tidy, Polyspace, QAC, or Coverity
Experience profiling code for key metrics like latency
Nice to have:
Software development experience on microcontrollers
Experience with real-time systems
Exposure to safety/security-critical systems
What's in it for you:
Be part of a fast paced and dynamic team
Very competitive compensation and meaningful stock grants
Exceptional benefits: Medical, Dental, Vision, and more
Unlimited PTO: We care about results, not punching timecards