Job Vacancy: Embedded Software Engineer
Contract Type: Full time (37.5 hours per week)
Based in Chessington, we are looking for a Digital Embedded Software Engineer to work in our Research & Development team.
JOB DESCRIPTION
To work with product specialists and other members of the R&D team to specify, design, develop, test and support embedded software for sophisticated digital audio mixing products. The sub-systems that you will be working with typically operate alongside higher-level applications and audio-processing engines and provide interfacing to electromechanical user-interfaces.
YOUR ROLE WILL INVOLVE:
Reporting to the 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.
- 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.
EDUCATION / QUALIFICATIONS:
Good degree (2.1 or 1st) 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.
MSc or PhD in a software, electronics, signal processing or audio engineering topic. would also be very useful.
ESSENTIAL ATTRIBUTES & SKILLS
- Proficient in C and/or C++
- Experienced in developing on ARM-based microcontrollers.
- Experience with serial interfaces (e.g. SPI, UART, I2C)
- Experienced in developing multi-threaded applications in a time-critical, resource constrained environment
- Experience with software version control
- Experience of hardware debugging and use of oscilloscopes
- Able to read and understand a circuit diagram
- Able to take requirements through a systematic process of design, coding, test with supporting documentation.
- Excellent verbal and written communication skills.
- Able to work effectively in a team
- Able to produce high quality software to a deadline
- Able to plan and manage own time and priorities effectively
DESIRABLE SKILLS
- Experience with Xilinx Zynq devices
- Experience with NXP i.MX devices
- Experience with Linux
- Experience with Yocto
- Experience of interfacing to FPGA and DSP devices and associated firmware
- Experience with FreeRTOS
- Experience with networking interfaces, protocols and drivers.
- Experience with USB
- Experience using audio mixing systems or pro audio
For a full Job Specification and salary range, or to forward a CV and letter of application, please contact careers@digiconsoles.com
Go Back