Job Vacancy: R&D Embedded Software Engineer
Contract Type: Full time permanent
Based in Chessington, we are looking for an Embedded Software Engineer to work in our Research & Development team.
THE SYSTEMS YOU WILL BE WORKING ON
Our mixing consoles can perform complex audio processing and mixing on hundreds of simultaneous audio channels with very low latency. To do this they have very high speed audio engines implemented in hardware and firmware. There is a sophisticated user interface implemented using graphics, touch and a range of electromechanical controls; and in between the user interface and the audio engine is a sophisticated application which drives the console. The sub-systems that you will be working with are typically managing message-based communications between higher-level applications and lower level audio-processing engines; and providing interfacing to and control of electromechanical user-interfaces.
YOUR ROLE WILL INVOLVE:
- Working with product specialists to define requirements and specifications for new sub-systems and functionality
- Taking ownership of the design and development of new subsystems and functionality and developing the code, working with other team members to manage integration, collaborate on problem solving and provide mutual peer-review
- Testing your own code, including devising test strategies and creating test harnesses where required, before handing over to the product testing team for formal acceptance testing
- Documenting your designs and delivered sub-systems
- Working with product support specialists to diagnose bug reports in existing code (including code you did not write) and developing resolutions
YOU SHOULD BE:
- Proficient in C programming on embedded devices, including ARM-based microcontrollers
- Experienced in developing interfaces to message-based serial protocols
- Experienced in developing multi-threaded applications in a time-critical, resource constrained environment
- Able to read and understand a circuit diagram
- Able to take requirements through to high-quality code and supporting documentation through a systematic process of design, coding and test
- Able to explain and discuss complex subjects effectively through excellent verbal and written communication skills (our working language is English)
- Mathematically fluent
- Interested in and willing to learn about audio systems
You will probably have a good degree (2.1 or 1st) and possibly post-graduate qualifications in Computer Science, Engineering or another subject with a high mathematical and software development component; or if not be able to demonstrate a corresponding level of understanding and expertise gained through an alternative life-path.
For a full Job Specification and salary range, or to forward a CV and letter of application, please contact firstname.lastname@example.org