At a Glance
- Tasks: Design and implement high-performance C++ systems for professional audio.
- Company: Join a dynamic R&D team in a leading tech company based in London.
- Benefits: Enjoy a competitive salary, hybrid work, and a supportive environment.
- Why this job: Make an impact in the audio industry with cutting-edge technology.
- Qualifications: Strong C++ skills and a passion for audio software are essential.
- Other info: Experience excellent career growth and collaboration across disciplines.
Our client is looking for a pragmatic systems engineer who loves building fast, reliable software that talks to real hardware. You’ll work alongside product designers, embedded/EE, and application developers to ship maintainable, high-performance systems for professional audio.
What you’ll be doing:
- Designing and implementing robust, maintainable C++ systems (C++17/20).
- Building efficient, asynchronous services (event loops, concurrency, IPC, networking).
- Managing complex toolchains (cross-compilers, CMake/Bazel), packaging, and versioning workflows (Git, trunk-based or GitFlow).
- Owning CI/CD pipelines and release engineering for smooth delivery.
- Writing rigorous automated tests (unit/integration/functional) with coverage and reliability gates.
- Profiling and debugging in production-like environments (perf, valgrind, ASan/TSan/UBSan, heap/CPU profilers).
- Collaborating tightly with hardware and firmware teams to integrate software with real devices.
What we’d love you to bring:
- Strong background in modern C++ (required): templates, STL, concurrency, RAII, move semantics.
- Solid Linux systems programming: sockets, filesystems, epoll/kqueue, threads, timers, IPC.
- Experience with secure systems design (threat modeling, least privilege, secrets, sandboxing).
- Familiarity with embedded Linux development (Yocto/Buildroot, cross-compilation, init/services).
- Interest in audio software, plug-ins, and AoIP (Audio over IP).
Nice to have:
- Rust experience (or a serious interest in learning it); FFI with C/C++.
- Real-time considerations (low-latency I/O paths, jitter budgets, lock-free structures).
- Networking for media: multicast, PTP/IEEE-1588, AES67/RAVENNA/Dante/AVB-TSN.
- Audio domain exposure: plugin formats (VST3/AU/AAX), DSP pipelines, JACK/ALSA/CoreAudio/ASIO.
- Observability/tooling: metrics/logging/tracing, crash capture, OTA/firmware update infrastructure.
- Internal tools and partner portals: small web backends (C++/Rust/Python) to support ops/dev.
What we’re looking for:
- Software engineering background (degree or equivalent professional experience).
- Ability to design and deliver well-structured, maintainable systems end-to-end.
- Comfortable collaborating across disciplines with designers, software engineers, and hardware engineers.
- Ownership mindset: you ship, measure, and iterate.
How they work!
- Small, hands-on R&D team; high autonomy, clear accountability.
- Code reviews, automated test gates, and CI as non-negotiables.
- Bias to simplicity, performance, and excellent DX (developer experience).
Additional information: HQ location: London; Employment type: Full-time; Laptop and relevant software provided.
Software Engineer employer: Logic recruiting
Contact Detail:
Logic recruiting Recruiting Team
StudySmarter Expert Advice 🤫
We think this is how you could land Software Engineer
✨Tip Number 1
Network like a pro! Get out there and connect with folks in the industry. Attend meetups, tech talks, or even online webinars. You never know who might have the inside scoop on job openings or can refer you directly to hiring managers.
✨Tip Number 2
Show off your skills! Create a portfolio showcasing your projects, especially those involving C++ and systems programming. Share it on platforms like GitHub and make sure it's easy for potential employers to see what you can do.
✨Tip Number 3
Prepare for interviews by practising common technical questions and coding challenges. Use platforms like LeetCode or HackerRank to sharpen your skills. Remember, confidence is key, so get comfortable explaining your thought process!
✨Tip Number 4
Don’t forget to apply through our website! We’ve got loads of opportunities waiting for talented engineers like you. Plus, applying directly can sometimes give you a leg up in the hiring process.
We think you need these skills to ace Software Engineer
Some tips for your application 🫡
Show Off Your C++ Skills: Make sure to highlight your experience with modern C++ in your application. We want to see your knowledge of templates, STL, and concurrency shine through, so don’t hold back!
Tailor Your Application: Take a moment to customise your CV and cover letter for this role. We love seeing how your background aligns with our needs, especially in systems programming and audio software.
Be Clear About Your Experience: When detailing your past projects, be specific about your contributions and the technologies you used. We appreciate clarity and want to understand how you’ve tackled challenges in your previous roles.
Apply Through Our Website: Don’t forget to submit your application through our website! It’s the best way for us to receive your details and ensures you’re considered for the role. We can’t wait to hear from you!
How to prepare for a job interview at Logic recruiting
✨Know Your C++ Inside Out
Make sure you brush up on modern C++ features like templates, STL, and concurrency. Be ready to discuss how you've used these in past projects, especially in systems programming. Practising coding problems that focus on these areas can really help you shine.
✨Familiarise Yourself with the Audio Domain
Since the role involves audio software, it’s a good idea to get acquainted with concepts like DSP pipelines and plugin formats such as VST3 or AU. If you have any personal projects or experiences related to audio, be sure to mention them during the interview.
✨Show Off Your Collaboration Skills
This position requires working closely with hardware and firmware teams, so be prepared to share examples of how you've successfully collaborated across disciplines in the past. Highlight your ability to communicate technical concepts clearly to non-technical team members.
✨Demonstrate Your Problem-Solving Mindset
Be ready to discuss how you approach debugging and profiling in production-like environments. Share specific instances where you’ve tackled complex issues, particularly in relation to performance and reliability. This will show your ownership mindset and commitment to delivering high-quality software.