AI Vision Processors For Edge Applications
Our solutions make cameras smarter by extracting valuable data from high-resolution video streams.
Job Description
We are seeking a Software Engineer Intern to develop software and tools for training, optimizing, and deploying AI models on Ambarella AI SoCs. You will work closely with experienced software and hardware engineers to understand AI workloads, improve their performance, and enable efficient execution on Ambarella’s heterogeneous computing platforms.
This is a hands-on role at the hardware–software boundary, spanning AI workloads, system software, performance optimization, and specialized hardware.
Key Responsibilities
- Develop software and tools for training, optimizing, and deploying AI models on Ambarella AI SoCs.
- Analyze AI workloads and optimize performance across heterogeneous compute engines and memory hierarchies.
- Understand research papers and implement state of art techniques to solve technical challenges.
- Collaborate with cross-functional teams to deliver optimized solutions.
Qualifications & Skills
Required
- Currently pursuing or recently completed a Bachelor’s or Master’s degree in Computer Science, Computer Engineering, Electrical Engineering, or a related field.
- Strong programming skills in C/C++ and Python.
- Basic understanding of computer architecture, microprocessors, and memory systems.
- Strong problem-solving and analytical skills.
- Effective communication and ability to work well in a collaborative team environment.
- Interest in understanding how software interacts with and leverages hardware.
Preferred
- Familiarity with AI SoCs, CPUs, GPUs, NPUs, or other AI accelerators.
- Experience developing software for Edge AI embedded systems.
- Knowledge of Deep Learning or Computer Vision fundamentals.
- Understanding of AI workloads such as CNNs, LLMs, or VLMs.
- Experience with Deep Learning frameworks such as PyTorch or TensorFlow.
What Makes You Successful
- You enjoy working close to hardware and understanding how software leverages specialized processors.
- You are curious, self-driven, and eager to learn new technologies.
- You enjoy solving challenging technical and performance problems.
- You are comfortable working in a fast-paced environment and tackling problems across different layers of the system.
- You enjoy collaborating with engineers across hardware and software disciplines.