We are seeking a Linux C++ Developer for the development of hardware products based on Linux. This role works with onboard support packages, drivers, and tools supporting our musical products. This includes OS package configuration, userspace programs, and scripts. Additionally, this role works cross-functionally with global application development teams, hardware engineers, and product design teams to create truly compelling products.
This role requires a good understanding of Linux system programming, C, C++, and the open-source ecosystem.
Core responsibilities include:
- Create board support packages, utility libraries and product configurations for new hardware products, and modify existing products.
- Take ownership of product performance holistically considering application down to driver impact.
- Work with hardware and software teams to create customer-delighting products.
- Work with a cross-functional team to ensure product architecture is robust and fit for purpose.
- Minimum 3+ years experience of embedded Linux
- Programming languages: C, C++, Python, Scripting (including Bash)
- Solid understanding of Linux kernel configuration and tuning
- Experience in Linux OS build toolchains such as Buildroot, Yocto, etc.
- Ability to think at “system-level,” from application code right down to the metal
- Knowledge of common comms interfaces (USB, Ethernet, UART, SPI, I2C)
- Ability to perform profiling and tracing of real-time applications, debugging using gdb and remote debug tools
- Experience with Git version control
- Ability to read technical documents (schematics, datasheets, application notes) and write code against them
- Ability to diagnose systems-level/hardware issues
- Ability to work cooperatively in a team environment
- Strong communication and teamwork skills
Nice to Haves:
- ARM (and ARM NEON) optimization experience
- Agile/Scrum/XP experience
- Background in music, with live, Studio, or DJ experience
- A degree-level qualification in Computer Sciences
- Availability to travel internationally
- 24 days annual leave (+ public holidays)
- Private Healthcare
- Pension scheme
- inMusic UK Employee Assistance Programme
- Cycle To Work Scheme
- Remote / Hybrid working options available
- Staff discount on products sold by inMusic (for personal use only)
- £1,000 annual allowance for training and development
- Sick pay