Description
We are seeking a skilled and motivated Senior C++ Software Engineer to join our embedded applications team and contribute to the development of software for our next-generation products.
This role focuses on application-level development in an embedded Linux environment, including feature design, implementation, and integration of video and control workflows.
The ideal candidate has strong C++ development experience, a product mindset, and the ability to independently drive high-quality software components from design to delivery. Experience with video or multimedia applications is an advantage.
Responsibilities:
• Design, develop, and maintain application-level software components for Linux-based embedded products, including NVIDIA Jetson platforms.
• Implement product features related to video streaming, system control and management, leveraging hardware acceleration capabilities for reliability and performance optimization.
• Collaborate with multidisciplinary teams including embedded, algorithm, system, and QA engineers to deliver robust end-to-end solutions.
• Participate in code reviews, software architecture discussions, integration activities, and troubleshooting of field issues.
• Contribute to architectural decisions and take ownership of features from design through delivery.
Requirements
• Bachelor's degree in Computer Science, Electrical Engineering, or a related field, or equivalent practical experience.
• Typically 5-8 years of hands-on experience developing software for Linux-based embedded environments. Strong experience in C++, working knowledge of Python and Bash. Ability to quickly learn and adapt to new programming languages.
• Good understanding of multi-process systems, multithreading, concurrency, and performance optimization.
• Hands-on experience with Git for version control and collaborative software development workflows. Familiarity with CI/CD processes.
• Experience working with Docker-based development and integration environments.
• Ability to use AI-assisted software development tools effectively and responsibly to support coding, debugging, and documentation tasks.
• Strong problem-solving skills, independence, and ability to work effectively as part of a multidisciplinary team.
Advantages:
• Familiarity with multimedia and video streaming pipelines, including streaming protocols and technologies such as RTSP, RTP/UDP, and H.264/H.265, as well as GStreamer or FFmpeg for multimedia development.
• Familiarity with CUDA, OpenCV, or other GPU/video-processing technologies.
• Experience working with NVIDIA Jetson platforms.
• Familiarity with networking in distributed or streaming systems.
• Familiarity with sensor integration such as IMU, GPS, or similar peripherals.