We are seeking a motivated and talented Embedded AI Software Engineering Intern/Co-op to join our team for the summer. As an intern, you will work on cutting-edge embedded AI and computer vision applications for mobile machines, with a focus on optimizing AI models and real-time processing pipelines for deployment on embedded hardware.
This role provides hands-on experience developing, deploying, profiling, and optimizing AI-powered vision systems on resource-constrained embedded platforms. You will work closely with our software engineering team to improve inference performance, reduce processing latency, and maximize hardware utilization while maintaining real-time system performance.
Responsibilities
- Collaborate with the software development team to develop and optimize embedded AI and computer vision applications for mobile machines.
- Deploy, benchmark, and optimize AI models for execution on embedded targets, including platforms equipped with hardware AI accelerators.
- Optimize real-time video processing and AI inference pipelines to improve throughput, reduce latency, and minimize CPU, GPU, and memory utilization.
- Profile and troubleshoot on-target performance bottlenecks involving image acquisition, preprocessing, inference, postprocessing, and video output.
- Explore AI model optimization techniques such as quantization, pruning, and hardware-specific acceleration to improve inference efficiency.
- Develop and optimize software components in C/C++ for embedded Linux and real-time operating systems.
- Integrate AI models with camera systems, sensor inputs, and embedded communication interfaces.
- Develop testing and benchmarking tools to evaluate model accuracy, execution time, memory consumption, and end-to-end pipeline performance.
- Document software architecture, optimization strategies, performance results, and implementation details.
- Participate in team meetings, code reviews, and technical discussions.