Embedded Software Engineer, Displays, Cambridge
The Display Controllers team works closely with both the R&D and Product Design teams, and are responsible for designing and testing the hardware and software needed to make our clients innovative displays perform to their best advantage.
The Job Purpose
To be a core software team contributor, designing and developing embedded software drivers, library functions and applications for use by the R&D team, the Product Design team and the User Experience team.
To design and develop pieces of firmware and/or hardware to bridge the gap into the hardware world and facilitate hardware bring-up and test.
Key Deliverables
To design and implement a number of Windows Embedded CE (v6.0) drivers targeting ARM9 (and later ARM1) based processors.
To develop tests for proving new hardware.
To develop hardware and/or firmware to assist in the proof of software drivers and library functions.
Expectations
To provide the main low level software assistance to the hardware team.
To bring up new hardware in conjunction with the hardware team.
Be bale and willing to travel overseas occasionally.
To follow the company guidelines for software development such that the software can be maintained and supported with minimal effort.
Demonstrable Experience
Hold an electronics engineering or similar numerate subject degree, or be able to demonstrate significant relevant experience to a similar level.
Have at least 5 years experience of developing reliable, embedded applications in C and C++ for running 24/7 in a mass-market consumer and business environment.
Have experience of time critical/efficient low level code in assembler (ARM9 preferred).
Be able to to design small hardware solutions to aid in the test or integration of software blocks.
Have experience of WinCE display driver architecture and WinCE device drivers.
Have experience of working with USB, Bluetooth and 802.11 or similar communication protocols.
Candidate attributes
The ideal candidate will:
Understand the concepts involved in modern day high speed digital electronics and communication devices.
Be able to create work-arounds for blocking issues.
Be aware of the requirements imposed on a developer to build good future proof applications.
Be able to recognize and resolve potentially conflicting priorities and demands.
Be tolerant of ambiguity and able to work to tight, but realistic deadlines
Work closely with the other members of the team.
Understand hardware and software interactions and make trade-offs between the two worlds.
Be equally at home with 32 bit CPUs and 8 bit microcontrollers.
Embedded Software Engineer, Displays, Cambridge
More information on this Job