Senior Software Engineer -Embedded Vision and Machine Learning
з/п не указана
Synopsys is a worldwide leading supplier of horizontal IP (Intellectual Property) which is used by our customers to design semiconductor integrated circuits. The product portfolio includes IP components and subsystems for ARC CPU processors, EV processors for embedded vision, USB, DDR, and Ethernet among many others .
Our small, dynamic team is focused on application-level development work for the Synopsys Embedded Vision Processor (EVP). This is a machine vision and deep learning processor targeting resource-constrained embedded systems. It combines general-purpose vision processors and a specialized engine for convolutional neural networks (CNN) .
We are looking for a senior embedded software engineer with machine vision and/or machine learning expertise to join our team and assist with the development of compelling application demonstrators and reference applications. These demonstrators are intended to highlight the strengths of our EVP and ML architectures by combining state-of-the-art algorithms and leading-edge CNN graphs, leveraging our OpenVX, OpenCL C and CNN programming tools. The demonstrators are deployed to our world-wide Application Engineering teams to showcase to customers and prospects.
- Design and develop exciting vision-focused product demonstrators which highlight the latest features of the EVP, using various vision frameworks and standards including OpenVX, OpenCV, OpenCL C; work with both deeply-embedded and host-side development environments
- Design and develop ML demonstrators to showcase Synopsys’ capabilities in areas beyond machine vision
- Interact with external partners who supply middleware and other capabilities used to augment product demonstrators and reference applications
- Interact with EVP product development engineers to provide feedback on product capabilities and usability
- Interact with Synopsys Application Engineers to promote the demonstrators and receive feedback on in-field performance
- Create technical documentation and presentations describing demonstrators and applications solutions
- Perform competitive analysis of EV & ML applications and demonstrators
- Track latest technical industry-wide initiatives and trends for embedded vision and machine learning
- Contribute to demonstrator and reference application development roadmap
- Excellent knowledge and multi-year experience in programming computer vision and/or ML applications on optimized embedded vision processors or GPGPU
- Knowledge and experience with deep learning and CNN
- Experience with one or more vision standards, like OpenCV or OpenVX
- Practical experience with computer vision applications in automotive, surveillance, mobile or robotics domains
- Excellent cross platform C/C++ and OpenCL C programming skills; experience with assembler
- In-depth understanding of at least one microprocessor or DSP architecture
- Experience with programming, debug, and analysis tools for embedded processors, including knowledge of one or more RTOSes and Linux
- Excellent software debugging skills including use of JTAG probes and source-level debuggers
- Understanding of professional SW development methodologies (version control, bug-tracking, code analysis, review and audit systems)
- Experience with the use of Linux and Windows OS
- Basic exposure to FPGA and SoC H/W design processes
Excellent teamwork and very strong English communication skills, written and verbal.