Software Engineer (Device Driver Development) - Edinburgh

Software Development
Ref: 122 Date Posted: Friday 13 Oct 2017
More

Our client is a small growing organisation working on a technical innovative product. You will be working as part of the talented Software team, on the development and implementation of high performance device drivers across multiple platforms to enable host devices to communicate with our client’s hardware.

As our client’s Software Engineer, you will:

  • Deliver, maintain and verify device drivers
  • It will be your responsibility to ensure that the drivers are of high quality and ready for certification by the applicable OS vendor (Microsoft, Apple, etc.). You will also assist in system level integration and the development of supporting tools and applications. 
  • Work with firmware engineers for the definition and implementation of communication between device and driver.
  • Work with test engineers on the verification of driver deliverables

Required Skills and Experience:

  • Expert knowledge of C and C++
  • Excellent knowledge of windows device drivers and networking framework
  • Experience in Linux kernel architecture, module development and kernel customization
  • Excellent knowledge of wireless management and configuration frameworks
  • Knowledge of MacOS kernel extensions development
  • Knowledge of layer 2 network protocols
  • Good understanding of digital hardware and architecture (discrete logic, FPGA, ASIC)
  • Excellent knowledge of USB protocol
  • Excellent knowledge of PCI protocol
  • Excellent knowledge of I2C and RS-232 interface
  • Excellent knowledge of Logic Analyzer use and hardware/firmware debugging
  • Proven team-player with the demonstrable ability to work autonomously

In return, you will receive:

  • Competitive salary and benefits package
  • Career development opportunities
  • Flexible working options