Job Description
<p><p><b>Job Overview :</b><br/><br/></p><p>We are seeking a highly skilled Embedded Linux Engineer to join our innovative team.<br/><br/></p><p>The ideal candidate should bring extensive expertise in working with advanced microprocessors, particularly NXP i.MX ARM Cortex-A series and other ARM Cortex-A series processors.
This role is critical in developing and maintaining cutting-edge embedded systems across various projects.<br/><br/><b>Key Responsibilities :</b><br/><br/></p><p>- Driver Development: Create, optimize, and maintain device drivers for various peripherals and interfaces.<br/><br/></p><p>- System Integration: Ensure seamless integration of components, including Ethernet, cameras, and communication interfaces such as MIPI-CSI, UART, SPI, I2C, USB, and others.<br/><br/></p><p>- Board Bring-up: Lead the process of initializing and configuring new hardware platforms, including bootloader configuration, kernel porting, and peripheral enablement.<br/><br/></p><p>- Custom Linux Build: Develop and maintain custom Linux distributions using Yocto Project and Buildroot, tailoring the operating system to meet specific project requirements.<br/><br/></p><p>- Security Implementation: Design and implement robust security measures, including secure boot, firmware encryption, and hardware-backed key storage.<br/><br/></p><p>- Performance Optimization: Analyze and enhance system performance, focusing on boot time reduction, power management, and overall efficiency.<br/><br/></p><p>- Debugging and Troubleshooting: Utilize advanced debugging tools and techniques to resolve complex issues at the hardware-software interface.<br/><br/><b>Qualifications and Skills:</b><br/><br/></p><p>- Bachelors or Masters degree in Computer Science, Electronics, Electrical Engineering, or related field.<br/><br/></p><p>- Minimum of 2 years of experience in embedded Linux development or equivalent.<br/><br/></p><p>- Proficiency in C, C++, and Python, good understanding of software design principles and patterns.<br/><br/></p><p>- Extensive experience with ARM architecture, particularly Cortex-A series processors.<br/><br/></p><p>- Experience with BSP (Board Support Package) development, linux kernel porting and custom driver development.<br/><br/></p><p>- Experience with cross-compilation tools and build systems (e.g., Yocto, Buildroot).<br/><br/></p><p>- Knowledge of board bring-up for a SoC, understanding of hardware schematics and datasheets of hardware components.<br/><br/></p><p>- Experience with communication modules: TCP/IP, Ethernet, Bluetooth, WiFi.<br/><br/></p><p>- Experience in hardware bring-up using interfaces such as USB, SPI, I2C, UART, SDIO.<br/><br/></p><p>- Proficiency in debugging tools and techniques (e.g., JTAG, GDB).<br/><br/><b>Preferred Attributes :</b><br/><br/></p><p>- Proven experience in bringing up boards with Cortex-A series SoCs.<br/><br/></p><p>- Experience in implementing secure boot and firmware encryption.<br/><br/></p><p>- Experience in Embedded multimedia streaming application development.<br/><br/></p><p>- Experience with video compression and real-time video streaming.<br/><br/></p><p>- Knowledge of multimedia frameworks like GStreamer.<br/><br/></p><p>- Expertise in bringing up various interfaces for video, audio, and display solutions (MIPICSI, MIPI-DSI, </p><p>HDMI, LVDS, I2S, PCIe).<br/><br/></p><p>- Experience with GPU technology, imaging, and multimedia.<br/><br/></p><p>- Good understanding of image processing and computer vision fundamentals, including camera calibration, video encoding, photogrammetry, depth estimation, object detection, tracking, and SLAM techniques.<br/></p><br/></p> (ref:hirist.tech)