Ross Video is seeking an Embedded Software Engineer to design and develop software for embedded systems, ensuring seamless integration with hardware design teams and delivering high-quality products to customers.
Requirements
- Proficiency in programming languages such as C or C++.
- Hands-on experience in the development and troubleshooting of embedded systems and Linux device drivers.
- Familiarity with software configuration management tools, defect tracking systems, and peer review processes.
- Strong understanding of OS coding techniques, IP protocols, interfaces, and hardware subsystems.
- Experience with embedded Linux development frameworks such as Yocto and Buildroot, along with related cross-compilation tools.
- Knowledge of related interfaces and technologies, including IP stack, storage, USB, I2C, SPI, PCIe, and DMA systems.
- Experience with ARM-based SoC platforms
Responsibilities
- Design and implement software for embedded devices and systems, from requirements to production and commercial deployment.
- Develop, code, test, and debug system software.
- Review code and design, focusing on improving efficiency, stability, and scalability of system resources.
- Integrate and validate new product designs.
- Develop, integrate, and troubleshoot bootloaders and Linux device drivers.
- Work with ARM-based embedded processors, particularly System-on-a-Chip (SoC) devices like Altera SoC and Xilinx Zynq.
- Utilize experience with Marvell switches and network protocols such as TCP/IP, UDP, VLAN.
Other
- Bachelor’s degree in Computer Science, Engineering, or a related field.
- Excellent documentation and written communication skills.
- Ability to work collaboratively with hardware design and development teams.
- Strong problem-solving skills and ability to interpret schematics and data sheets for hardware components.
- Commitment to diversity, equity, and inclusion in the workplace