Senior Firmware Engineer
£Competitive + 27 Days Holiday, Free Onsite Gym, Pension, Bonus
We have a vacancy for a Senior Firmware Engineer to work on challenging projects in consumer products.
Home to our global Research, Design and Development centre and all of our Commercial functions, Dyson HQ is tucked away in countryside famous for the railway tunnels and bridges of Isambard Brunel, who revolutionised modern engineering. Our secluded location helps us to protect our ideas and stay independent-minded. Yet nearby are the fashionable cities of Bristol and Bath (where a young James Dyson invented cyclone technology). The building is the heartbeat of Dyson. Over 1,500 people, including James himself, spend their days strategising, inventing technology and telling the Dyson story to the world. From 2016, our HQ will begin doubling its footprint with an ambitious new expansion.
In the future, the way technology is controlled will be integral to how it performs. Dyson software engineers are already transforming the way our owners interact with their machines. Our first connected robot vacuum launched in 2014 and its companion app takes cleaning into the digital era. Scheduling cleans. Reviewing mapping data. Diagnosing technical issues. Our new technology is advancing at speed. Network-based robotics and intelligent sensing technologies, all enabled by advanced software and app platforms. And all cementing Dyson’s place as a pioneering global technology organisation.
We work in a supportive environment, in a team which is constantly aiming to improve itself. We’re looking for someone who shares this ethic, and expresses a desire to create high-quality, robust code to solve diverse real-world problems. You must be fluent in the C programming language and be equally comfortable with high-level design and abstraction as with implementation, deployment, testing and debugging of application code.
- Develop real time embedded software for a range of varied consumer products.
- Develop Device Drivers on a range of silicon platforms.
- Analysis of high level requirements into efficient algorithms.
- Fast prototyping of complex ideas onto an embedded platform in the C programming language.
- Debug real time software issues using a range of techniques and tools.
- Integration of software with hardware and mechanics.
- Development of tools to support embedded software product development.
- Experience in bare-metal low level microprocessor software development.
- Strong background in real time embedded C.
- Experience in debugging complex software problems.
- Software Configuration Management tools (source control, continuous integration, etc.).
- Ability to plan and estimate development tasks (ideally within an Agile framework
- Experience with unit/acceptance testing and writing testable code.
The following skills may also be beneficial (but are not essential):
- Demonstrable industrial C/C++ experience.
- Knowledge or experience of Brushless D.C. (BLDC) motor control theory.
- Experience in industry standard communication protocols i.e. Wi-Fi/Bluetooth, and internet protocols i.e. HTTP/MQTT.
- Experience in defining software level requirements and design using UML.
- Development of PC based scripts and tools for debug purposes, in either Python or C++ / C#
- Familiarity with Linux
Dyson monitors the market to ensure competitive salaries and pension contributions. Beyond that, you’ll also enjoy a profit-related bonus, generous leave and life insurance. But financial benefits are only the start of a Dyson career. Rapid professional growth, leadership development and new opportunities abound, driven by regular reviews and dynamic workshops. And with a vibrant culture, flexible working hours, the latest devices and a relaxed dress code reflecting our engineering spirit, it’s an exciting team environment geared to creativity, innovation and ambition.