< Back

Job Opening ID

1045

Sector

Electronics

Job Type

Permanent

Salary Details

up to £42,000

Location

Edinburgh

Assigned Recruiter

Matt Golebiewski

Software Engineer for Platform Driver Development

Enigma People Solutions has an immediate vacancy for a Software Engineer for Platform Driver Development for an outstanding Edinburgh-based electronics client working at the forefront of their field in the development of new and innovative technology. Those joining this pioneering team will be part of creating our wireless future.

Role summary 
 
Working as part of the Software team, you will work on the development and implementation of high performance device drivers across multiple platforms to enable host devices to communicate with our client's hardware. 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. 
  
Responsibilities 
The core responsibilities include: 
  • Deliver, maintain and verify device drivers. Communicate developed designs/code to team lead and team members orally and through written communication.  
  • Excellent code annotation and corresponding documentation skills.  
  • Work with firmware engineers for the definition and implementation of communication between device and driver. 
  • Work with software engineers for the definition and implementation of services towards user-space applications. 
  • Work with test engineers on the verification of driver deliverables. 
Person Specification 
 
Essential 
  • Bachelors/Masters in a relevant engineering discipline such as electronics engineering or computing science. 
  • Expert knowledge of C and C++. 
  • Excellent knowledge of windows device drivers and networking framework. 
  • Excellent knowledge of Linux kernel architecture, module development and kernel customisation.  
  • Excellent knowledge of MacOS kernel extensions development. 
  • Excellent knowledge of developing drivers for Android devices and for iOS devices.  
  • Good understanding of driver certification (Windows, iOS, macOS, Android etc.) 
  • Good understanding of digital hardware and architecture (discrete logic, FPGA, ASIC). 
  • Excellent knowledge of USB protocol, PCI protocol, 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. 
Desirable 
  • Understanding of visible light communications technologies. 
  • Experience with using source control and versioning tools (e.g., SVN) on a day-to-day basis. 
  • Happy to work against challenging deadlines. 
Apply today by clicking the button below, or alternatively apply with your CV and a cover email highlighting any additional information in support of your application to matt@enigmapeople.com

Subscribe or follow for the latest job vacancies