Ready to join the future of innovation at NXP?
NXP Semiconductors enables secure connections and infrastructure for a smarter world, advancing solutions that make lives easier, better and safer. As the world leader in secure connectivity solutions for embedded applications, we are driving innovation in the secure connected vehicle, end-to-end security & privacy and smart connected solutions markets. Built on more than 60 years of combined experience and expertise, the company has 45,000 employees in more than 35 countries.
- Design, develop, test and optimize ML/AI software for NXP MCUs, MPUs and accelerators;
- You will be part of a global team developing software and testing infrastructure for ML services on NXP MCUs and MPUs;
- Present technical solutions within the team or within larger groups.
As a member of our team that develops software for ML, you will extend your practical experience on neural network architectures, model training, inference, optimization and deployment.
As part of your daily activities you will create, test and maintain code for deploying neural networks on NXP hardware like microcontrollers, general purpose microprocessors, DSPs, GPUs or specialized neural accelerators using open source or proprietary software inference engines like neural network compilers or runtime software technologies.
You will work with and learn from recognized technical leaders in the ML domain.
You will be part of Agile teams and you’ll use state-of-the-art software lifecycle management tools while following ML software development standards.
Must have skills:
- Good C and C++ programming skills
- BS or MS degree in Computer Science, Computer Engineering, or related degree
- Deep understanding of embedded systems architectures and operating system fundamentals
- Good knowledge of Linux development environment
- Good Python skills
- Good knowledge of Machine Learning concepts: Convolutional Neural Networks, Conv2D, MaxPool, AvgPool, Dense, non-linear activations, quantization
- Good knowledge of signal processing and common algorithms: matrix algebra, convolution, correlation, Look Up Tables
- Troubleshooting skills (program debugging, solve compiling issues, solve network miss configurations)
- Good knowledge of software and algorithms optimizations
- Interested in and curious about ML/AI
- Good technical presentation skills
- Fluency in English written and spoken
The following are pluses:
- Experience with deep learning frameworks (TensorFlow, Keras, Pytorch) and familiarity with state-of-the-art NN architectures (SSD, MobileNet, ResNet, Yolo)
- A good understanding of the fundamentals and best practices of traditional machine learning algorithms
- Experience with low-level device drivers
- Familiar with ARM architectures (Cortex-M and Cortex-A)
- Cloud/Edge concepts. Different scenarios of blending cloud with edge
- Good knowledge of OpenCL and GPU programming
- Experience with Agile methodology