1. Design, develop, and optimize software for data center switches to ensure high-performance and reliable network switching.
2. Implement and maintain BSP support for both x86 and ARM-based platforms.
3. Develop and integrate Linux kernel drivers to enable seamless hardware functionality.
4. Develop and maintain SONiC platform adaptation and contribute updates to the community.
5. Write, execute, and automate test cases to identify, debug, and resolve software issues.
6. Collaborate with hardware engineers to achieve robust software-hardware integration.
7. Work closely with cross-functional teams to troubleshoot and resolve issues throughout the product lifecycle.
【Responsibilities】
• including but not limited to:
• Develop and maintain server BIOS.
• Problem investigation and resolution.
• Motherboard bring-up.
• Provide BIOS technical support to internal/external teams.
【Require】
• More than 2 years of BIOS development experience
• Intel x86 or AMD x86 product development experience
• Familiar with x86 system architecture
• Familiarity with C/Assembly
• Cross-functional teamwork
• Intermediate level of English
• Author automation workflows in Python, the Robot framework, and Powershell to make sure a Windows system with BMC, UEFI, NVidia GPUs can boot correctly.
• Run stress tests on said system.
• Automate firmware/driver upgrades on said system.
• Debug booting/upgrades when an error occurs.
1. Design, develop and maintain AMI BIOS FW(AptioV).
2. Develop or porting BIOS features to new Intel/AMD platforms.
3. Handle projects and communicate closely with other function teams.
4. Write, integrate and maintain common specifications for BIOS teams.
5. Validate functions from R&D point of view for features.
Job Summary –
We are seeking a highly experienced Senior Firmware Developer with a strong background in ARM architecture, UEFI/BIOS development, and Windows on ARM (WOA) platforms. The ideal candidate will have deep expertise in embedded systems, low-level programming, and board bring-up, with a proven track record of delivering robust firmware solutions for ARM-based devices.
Key Responsibilities:
· Design, develop, and maintain firmware for ARM-based platforms.
· Implement UEFI/BIOS modules using EDK-2 and WMI.
· Perform board bring-up and low-level hardware debugging using JTAG/SWD.
· Collaborate with cross-functional teams to ensure seamless hardware-software integration.
· Develop firmware applications for Windows on ARM and Snapdragon-based systems.
· Interface with peripheral components using UART, SPI, I2C, ADC, and DAC.
· Create and maintain technical documentation and design specifications.
· Contribute to CI/CD pipeline integration and automated testing frameworks.
· Participate in code reviews and provide technical mentorship to junior developers..
Years of experience needed:
Minimum 6+ years of hands-on experience in firmware development for ARM-based platforms.
Technical Skills:
· Strong experience in developing UEFI/BIOS firmware using EDK-2 and WMI.
· Proficient in C/C++ programming for low-level system development.
· Deep understanding of ARM architecture and Windows on ARM (WOA) platforms.
· Skilled in building firmware applications for ARM processors.
· Hands-on with hardware interfaces like UART, SPI, I2C, ADC, and DAC.
· Familiar with debugging tools such as JTAG and SWD (preferred)
· Good to have knowledge with RTOS, embedded Linux, and bare-metal systems.
· Knowledge of Qualcomm’s Windows on Snapdragon (WOS) platform(preferred)
· Able to design UEFI/BIOS modules and write ARM software specifications.
Certifications Needed:
· Bachelor’s, Master’s, or higher degrees in Computer Science, Computer Engineering, Software Engineering, Information Systems, Electrical Engineering, or equivalent.
Main JD:
1. System firmware and diagnostic development for EVT/DVT/PVT (using C/C++)or Automated test program development for EVT/DVT/PVT (using Python)
2. Co-work with cross-functional teams on projects
3. Communicate with customers in English
Secondary JD:
1. Assist cross-functional teams on projects to resolve software-related issues
2. Develop some tools to assist EVT/DVT/PVT
• 3-7 years of experience in the x86 BIOS/UEFI development
• Experience with x86 CPU/APU architectures and associated compilation tools
• Expert in C language Experience with platform bring-up.
• Familiar with at least one BIOS code base
• Experience of working with opensource coreboot project & mainboard related porting.
• Experience of working with Intel FSP codebase and understanding of coreboot & FSP boot flow.
• Understanding of coreboot & FSP build tools and build processes.
• Experience of working with different coreboot payloads like edk2, SeaBios, Tianocore etc
• Ability to read platform Hardware and Processor specifications to understand the coreboot mainboard porting required.
• Good understanding of UEFI framework concepts to port UEFI code to FSP.
1. Android/Linux Platform BSP porting & debug
2. Android/Linux device driver porting & debug
3. Design and maintain manufacture test tool & debug
1. Deep diving to Server features such as IPMI,Redfish,RAS and etc...
2. Develop BIOS/BMC Features and tools.
3. Responsible for porting, debugging, developing and improving the firmware for server projects.
4. Develop a verify and other tool, for example: aging tool, debug tool, a request tool from the customer and etc.
Work with Customers to review requirements are met for their EMC standards (from PCB to subassembly and Server level)
Determines methods and layouts for compliance with EMC design standards for customers and determines testing programs for validation of the customers’ equipment.
Wide range of experience including mechanical housings review and design for compliance with EMC standards.
Develop, manage and perform EMC Test data to assist in root cause and corrective actions.
Communicate periodic status and known risks (with proposed solutions) on projects.
Bring up new generations high-performance and low-power SoC for edge computer vision Security camera and network connection application to diverse new markets.
At iCatch, we had strong multi-OS on SoC experience to bring up system with best real time performance and flexible network connection products.
We actively seek candidates with strong background in Linux video streaming, network or performance optimization experience to join an exciting cross-functional team to deliver the next generation computer vision products.
[Responsibilities]
1.Develop and maintain Linux application, kernel and device driver of Security Camera products.
2.Support customer issues debugging on Security Camera applications including video streaming, network application and camera functions.
3.Work closely with other teams, such as software, hardware, SDK teams and Quality assurance teams to develop schedule and deliver BSP on time with good quality.
4.System program development (Linux development environment and embedded software).
[Minimum Qualifications]
1.A BS degree in Computer Engineering, Electrical Engineering, or Computer Science.
2.At least 1-2 years of embedded software development experience Knowledge of Real-Time concepts
3.Familiar with Embedded Linux system development.
4.Strong experience in C programming
5.Will to co-work with customers on MP support and design win.
6.Self-motivated, good attitude, skilled in meeting deadlines and work collaboratively in a team environment