You will develop highly optimized SW implementations of automotive ADAS computer vision applications on the videantis vision and video DSP architecture for embedded system targets, e.g., automotive front, rear, and surround view cameras and self-driving cars, exploiting SIMD, VLIW, and multi-core architecture features. An advanced Eclipse-based toolchain featuring a high-level compiler, cycle-accurate multi-core simulator, and detailed analysis and profiling tools will support your thorough performance and data flow optimization and verification. You will utilize existing code libraries like OpenCV and OpenVX as the basis for complete computer vision applications and will further grow the scope of those optimized libraries for use in generic automotive vision application contexts.
Your main responsibilities are:
- Develop optimized implementations of automotive ADAS computer vision applications on the videantis processor platform starting from automotive Tier 1 / OEM algorithm specifications in C/C++, Matlab, or textual description
- Follow specific automotive SW development processes and standards like Automotive SPICE, MISRA, ISO26262 from the requirements specification to the verification and documentation of code modules
- Perform floating-point/fixed-point analysis with a focus on precision requirements and embedded implementation efficiency
- Consider cycle count, memory size, and memory bandwidth constraints as optimization objectives
- Identify where existing optimized videantis code libraries like OpenCV, OpenVX, and other computer vision frameworks/APIs can be employed
- Meet specific performance, load and schedule targets
- Augment existing ADAS / CV code libraries with generic code portions applicable in generic automotive vision application contexts
- Develop a thorough test environment and perform exhaustive regression testing
- Document code and verification results and support product documentation
- Provide feedback regarding identified architectural optimizations to the hardware architecture team
- Partition the application for optimal performance across multiple cores
The position is located in Hannover. We will consider remote work with frequent visits to our office for exceptional candidates.
Desired Skills & Experience
- MS or BS degree in Engineering or Science
- Minimum 5, preferred 10 years of relevant professional experience
- Experience in automotive ADAS computer vision algorithms and existing libraries, e.g., OpenCV, VLIB, FastCV, or OpenVX
- Excellent skills in C programming
- Detailed embedded software experience with C/C++, OpenCL C kernel and low-level assembly language programming on DSPs
- Proficiency in automotive SW development processes and standards like ASPICE, MISRA, ISO26262
- Experience with parallel (SIMD) and multi-core programming
- Proficiency in Linux/Unix and scripting languages
- Thorough work attitude and attention to detail while meeting strict deadlines
- Strong English language skills (written and verbal)
“Computer vision is the biggest, most disruptive, application segment in technology today,” said Dr. Jon Peddie, president of Jon Peddie Research. This is your chance to work in a small company where you can make an impact, on a technology that will change consumer electronics. Join us and you will become part of a world-class team that knows how to build industry-leading solutions. Your code will make it into high-volume products such as automotive front, rear, and surround cameras and self-driving cars.
We encourage software engineers that are excellent programmers and who enjoy optimizing programs to apply even if they may not fit the exact above profile.