iFlow Inc
Senior Software Embedded Engineer
iFlow Inc, Palo Alto, California, 94306
JOB DESCRIPTION Schedule: M-F (9-6 with flex depending on business needs) This role is 100% on site Title: Embedded SW Validation Engineer Role Summary In this position within the Autonomy Hardware team, you will develop test software and use them to validate the automotive SoC solutions, build up validation and benchmark software framework to identify gaps and risks at component and module level. You will be collaborating with other cross functional teams in gathering all the test requirements, implementing test sequences and data collection in software, and running test software on the target hardware platform to acquire test results. Requirements and Responsibility Have a deep understanding of embedded system components and bus protocols (e.g., AMBA), and its boot up sequences. Familiar with JTAG-based debuggers to halt and resume processors, set breakpoints, and debug at both the transaction and process levels. Analyze and debug complex applications involving multiple threads, Memory Management Units (MMUs), interrupts, and inter-process communication (IPC) mechanisms. Toolchain Proficiency: Utilize GCC toolchains and GDB for effective development and debugging of embedded software. Driver Debugging: Investigate and resolve issues related to low-speed IO drivers (e.g. UART, GPIO, SPI, I2C), ensuring they function correctly within the system. Familiar with one of the following IO protocols and has experience to bring-up and debug such interface and their drivers: Gigabit Ethernet, PCIe, CPHY, MPHY Device Tree and Bootloaders: Work with device trees, U-Boot, and operating systems to manage hardware configurations and ensure proper system initialization. Experience w/ secure boot process, and its bring-up and debug process. Coding and Development: Write, review, and maintain high-quality C code, ensuring adherence to best practices in embedded software development.