DiGiCo mixing consoles can process and mix hundreds of simultaneous audio channels with low latency for the world’s top music performers and venues. As a member of the team, you will design and implement low level code to interface the hardware and lower levels of the software with our higher-level control applications, working at the forefront of this exciting industry. We are looking for an experienced Embedded Software Engineer to strengthen our team in Chessington and expand the capacity of our embedded software team to support future roadmap growth. With a young and growing team ,we have a professional and fun environment in which to work for this world leading company within the larger Audiotonix Group.
Main Activities & Responsibilities
Reporting to the Embedded Software Team Leader you will be responsible for:
- 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, developing software, working with other members of the team 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 and developing resolutions.
Other features of the job
- Working with colleagues to evolve and improve our development, integration and test environments.
- Working with colleagues to evolve and improve the structure of our codebases.
Terms & Conditions
- 37.5 hours per week
- Good degree (2.1 or 1st) in Computer Science, Engineering or another subject with a high mathematical and software development component; or expertise gained through an alternative life-path.
Experience, Knowledge and Skills
- Proficient in C and/or C++ – Essential
- Experienced in developing on ARM-based microcontrollers. – Essential
- Experience with serial interfaces (e.g. SPI, UART, I2C). – Essential
- Experienced in developing multi-threaded applications in a time-critical, resource constrained environment. – Essential
- Experience of hardware debugging and use of oscilloscopes. – Essential
- Able to read and understand a circuit diagram. – Essential
- Able to take requirements through a systematic process of design, coding, test with supporting documentation. – Essential
- Excellent verbal and written communication skills. – Essential
- Able to work effectively in a team. – Essential
- Able to produce high quality software to a deadline. – Essential
- Experience with TIVA devices. – Desirable
- Experience with iMX6 devices. – Desirable
- Experience with Xilinx Zynq devices. – Desirable
- Experience with Linux. – Desirable
- Experience of interfacing to FPGA and DSP devices and associated firmware. – Desirable
- Experience of developing on FreeRTOS. – Desirable
- Experience with networking interfaces, protocols and drivers eg TCP/IP and USB. – Desirable
- Experience using audio mixing systems or pro audio. – Desirable
- Experience with software version control. – Desirable
Behaviours and Values
- Inquisitive with desire to learn
- Attention to detail
- Pride in delivering quality to time
- Active team member
For a full Job Specification and salary range, or to forward a CV and letter of application, please contact firstname.lastname@example.org