Systems Software Developer
Our BSP and Driver Development Team are seeking several experienced BSP and driver developers with Junior to Senior level experience
The successful candidates will report directly to the Manager, BSP and Driver Development and be responsible for the development of software drivers for various hardware peripherals including adaptation of existing drivers as well as development of new driver architectures. Examples of hardware peripherals requiring drivers are: Ethernet, USB (Ethernet, mass storage, HID, etc), ATAPI, Audio, Serial, PCI, and so on.
Duties and Responsibilities:
- Develop software drivers for various hardware peripherals including adaptation of existing drivers as well as development of new driver architectures
- Examples of hardware peripherals requiring drivers: Ethernet, USB (ethernet, mass storage, HID, etc.), ATAPI, Audio, Serial, PCI, etc.
- Support of new peripheral hardware using existing driver frameworks
- Development of board support packages
- Development of new driver architectures to support future hardware peripheral advancements
- Strong analytical/debugging skills essential
Education and Experience:
- Bachelors degree in Computer Science or equivalent
- Junior to Senior level experience in software development
- Knowledge of applicable programming languages (C, Assembly) and operating systems (QNX, pSOS+, VxWorks, Experience developing and debugging Ethernet and USB drivers. Windows CE, RTLinux, or similar UNIX-based OS)
- Prior experience in developing and testing of relevant buses and device drivers (block, networking, firewire, MOST, USB, Serial, VME, PCI, PC-104, etc.)
- Fundamental understanding and development experience with major processor architectures (ARM, x86, SuperHitachi, MIPS, PPC, etc.)
- Strong analytical skills. Excellent communication and team building skills are required
Work Tools Used:
- Computers, Peripheral equipment, oscilloscope, Logic analyzers, network switches, network hubs, network test equipment, etc.