Software Engineer, Research & Development
Position Overview:
We are looking for a skilled Software Engineer to integrate a variety of sensors into our software frameworks. In this vital role, you will design, develop, debug, and maintain the core software stack while also gaining in-depth knowledge of sensor technologies, serving as a key resource to guide team members toward effective solutions.
Qualifications:
- Bachelor’s or Master’s degree in Computer Science, Robotics, Electrical Engineering, Mathematics, Physics, or a related STEM field, or equivalent experience.
- At least 1 years of experience in software development for production environments.
- Strong proficiency in C++ and Python programming.
- Understanding of the fundamentals of camera, LiDAR, radar, IMU, GNSS, and other sensor technologies, including their operational principles, advantages, disadvantages, limitations, and calibration methods.
- Familiarity with ROS or similar frameworks and relevant communication protocols.
- Experience with Linux networking and troubleshooting network-related issues.
- Strong problem-solving and debugging abilities.
- Capability to thrive in a fast-paced, dynamic environment.
- Experience in developing drivers and software for radar, LiDAR, cameras, or expertise in sensor development.
- Background in real-time embedded systems, with experience in asynchronous environments involving multiple real-time, low-latency, safety-critical processes, threads, timers, and interrupts.
- Experience building custom Linux-based systems for embedded devices, including kernel module development.
- Understanding of electronic engineering principles to support functions such as reviewing schematics and designs of embedded devices, as well as performing hardware bring-up and debugging.
- Familiarity with common automotive hardware interfaces like CAN, SPI, I2C, PCIe, and Ethernet.