Job Search and Career Advice Platform

Enable job alerts via email!

Staff BSP Software Engineer

Celestica

Penang

On-site

MYR 120,000 - 180,000

Full time

Yesterday
Be an early applicant

Generate a tailored resume in minutes

Land an interview and earn more. Learn more

Job summary

A leading technology company in Penang is seeking an experienced Linux Kernel Developer. Responsibilities include developing and optimizing device drivers, participating in hardware bring-up, and providing technical leadership in troubleshooting. The ideal candidate will have a minimum of 10 years of experience in Linux kernel development, strong skills in C programming, and proficiency in debugging tools. This role offers a competitive salary and a dynamic working environment.

Qualifications

  • Bachelor's degree in a relevant engineering field.
  • Minimum 10 years of experience in Linux Kernel/Device Driver.
  • Strong skills in C and data structures.

Responsibilities

  • Develop and optimize the Linux kernel and device drivers.
  • Participate in hardware board bring-up and debugging.
  • Lead technical troubleshooting during design.

Skills

C programming
Data structures
Debugging skills
Understanding of CPU architecture
Experience with protocols (SPI, I2C, UART)

Education

Bachelor's degree in Computer Technology, Electrical or Communication Engineering

Tools

Kernel debugging tools
JTAG
Git/SVN
Job description

Linux Kernel Development, Optimization and Maintenance.

Design and Development of Device Drivers for various peripherals including NIC, SPI, I2C, UART, CPLD, FPGA.

Design and Development of BSP, HAL, Application based on Debian, CentOS, embedded Linux and Other Standard Linux.

Participate in Silicon/Hardware Board bring-up and debug.

Work closely with the Firmware and Hardware teams.

Optimizing/Customizing OS based on ONIE/ONL/SONiC to suit for diagnostic hardware system.

Technical lead to trouble shooting the issues found in design phase.

Technical lead to deliver BSP package(SPEC, image, checklist…) following with dev process compliance by schedule.

Qualifications
  1. Bachelor(equivalent engineering) degree or above, Major related to compute technology, electrical or communication engineering
  2. Minimum of 10 years of experience Linux Kernel/Device Driver.
  3. Very strong in C and data structures, preferably in developing multi-core or multi-threaded applications.
  4. Proficiency in compiling/cross-compiling (MIPS, x86, ARM, or PowerPC) is strongly desired.
  5. In-depth knowledge of kernel functionality and architecture including networking, memory management, process management etc.
  6. Must have hands-on experience in developing device drivers for the Linux kernel.
  7. Excellent debugging skills, experience with kernel debugging tools and JTAG is preferred.
  8. Solid understanding of low-level CPU architecture (core, cache, MMU, bus architecture, etc.)
  9. Experience with hardware peripherals / buses/ protocols like PCIe, USB, SATA, SD/MMC, LPC, JTAG etc.
  10. Good understanding of protocols & interfaces like SPI, I2C, UART is desirable.
  11. Experience in developing Unix user-space applications is desirable.
  12. ONL/ONIE/SONiC and network product work experience is preferred.
  13. Knowledge and understanding of open source development and SW revision control system(Git/SVN)
  14. Multicultural working experience desirable
Get your free, confidential resume review.
or drag and drop a PDF, DOC, DOCX, ODT, or PAGES file up to 5MB.