Embedded Software Engineer (LDN) in London

Embedded Software Engineer (LDN) in London

London Full-Time 63000 - 77000 £ / year (est.) Home office (partial)
Cirrus Logic

At a Glance

  • Tasks: Design and implement high-performance embedded firmware for cutting-edge DSP architecture.
  • Company: Join Cirrus Logic, a leader in mixed-signal processing with an award-winning culture.
  • Benefits: Enjoy a hybrid work model, competitive salary, and opportunities for professional growth.
  • Other info: Collaborative environment with a focus on diversity and inclusion.
  • Why this job: Make a real impact by solving complex challenges for top consumer brands.
  • Qualifications: Experience in embedded firmware development using C/C++ and knowledge of RISC V or Arm architecture.

The predicted salary is between 63000 - 77000 £ per year.

For over four decades, Cirrus Logic has been propelled by the top engineers in mixed-signal processing.

Our rockstar team thrives on solving complex challenges with innovative end-user solutions for the world's top consumer brands.

Cirrus Logic is also known for its award-winning culture, built on a foundation of inclusion and fairness, meaningful community engagement, and delivering enjoyable employee experiences at every turn.

But we couldn’t do it without our extraordinary workforce – and that’s where you come in.

Join our team and help us continue to make Cirrus Logic an exceptional place to grow your career!

We’re looking for an Embedded Software Engineer who thrives close to the hardware and enjoys building high-performance, reliable firmware for DSP architecture and microcontrollers (e. g., RISC V and Arm Cortex M/A).

You’ll design and implement real-time embedded software, optimize compute-heavy pipelines, and collaborate with hardware and systems teams to bring products from concept to production.

This role suits someone who can move comfortably between architecture/design, low-level firmware, and performance tuning—especially where latency, throughput, power, and determinism matter.

Key Responsibilities

  • Design, implement, and maintain embedded firmware for DSP cores and MCUs (RISC V and/or Arm).
  • Build and optimize real-time signal-processing pipelines (fixed-point and/or floating-point), potentially including FFTs, filters, modulation/demodulation, codecs, feature extraction, or control loops.
  • Develop firmware using a mix of C/C++ (and selective assembly where appropriate), with strong focus on performance, memory, and power optimization.
  • Work with So C/board peripherals: DMA, timers, SPI, I²C, UART, I²S/TDM, PWM, GPIO, and relevant bus fabrics.
  • Bring up new hardware: boot flows, clocks, memory maps, interrupt vectors, peripheral init, and early validation.
  • Implement and debug drivers and RTOS components (e. g., Zephyr or equivalent), including task scheduling, synchronization primitives, and ISR design.
  • Develop test strategies: unit tests, hardware-in-the-loop tests, test automation, and manufacturing/production diagnostics.
  • Use debugging/profiling tools: JTAG/SWD, logic analyzers, oscilloscopes, trace (ETM/ITM), and cycle-accurate profiling when available.
  • Collaborate cross-functionally with hardware, FPGA/ASIC, systems, and application teams to define requirements and interfaces.
  • Contribute documentation: architecture notes, interface specs, timing budgets, work packages, and bring-up guides.
  • Participate in code reviews and help establish best practices for embedded quality, safety, and maintainability.

Required Skills and Qualifications

  • Strong professional experience developing embedded firmware in C/C++ for MCUs and/or DSPs.
  • Hands-on experience with RISC V and/or Arm architecture (Cortex M/A), including interrupts, memory, caches, and performance characteristics.

• Solid understanding of embedded software fundamentals

  • register-level programming, memory-mapped I/O
  • concurrency (ISRs, RTOS tasks), race conditions, timing determinism
  • fixed-point arithmetic, numerical precision, and overflow/underflow management
  • Proven ability to optimize firmware: cycle counting, memory layout, DMA usage, cache behavior, minimizing latency and jitter.

• Comfortable with toolchains and build systems

  • GCC/LLVM-based toolchains, cross-compilation
  • CMake/Make, Meson, linker scripts, map files

• Strong debugging skills with hardware and firmware

  • JTAG/SWD debugging
  • root-cause analysis of timing and performance issues
  • Source control expertise (Git) and disciplined engineering practices (code reviews, CI).

Preferred Skills and Qualifications

  • Languages: C, C++, (optional) assembly, Python for test tooling/scripts
  • Architectures: RISC V, Arm Cortex M/A, DSP cores
  • RTOS/OS: Zephyr, embedded Linux (optional)
  • Tools: JTAG/SWD debuggers, GDB, Open OCD/J-Link, logic analyzer, oscilloscope, trace tools
  • Practices: profiling, timing analysis, unit/integration testing, CI/CD for embedded
  • Experience with common DSP libraries/techniques (e. g., CMSIS-DSP, vendor DSP libs) and SIMD/vector optimization patterns.
  • Experience with Zephyr, or embedded Linux on Arm.
  • Familiarity with bootloaders, secure boot, OTA update mechanisms, and field diagnostics.
  • Understanding of digital communications, or audio, processing domains.
  • Exposure to safety/security standards (e. g., MISRA C/C++, IEC 61508, ISO 26262)

This Newbury or London based role is a hybrid remote position and will follow a 2 day in-office work schedule, with in-office days based on business needs and team preference.

You must be based within commutable distance of the work location listed on the job posting, or willing to relocate prior to beginning employment with Cirrus Logic.

  • #LI-PD1
  • #LI-Hybrid

Export control restrictions based upon applicable laws and regulations would prohibit candidates who are nationals of certain embargoed countries from working in this position without Cirrus Logic first obtaining an export license.

Candidates for this role must be able to access technical data without a requirement for an export license. We are unable to sponsor or obtain export licenses for this role.

At Cirrus Logic, we believe that diversity drives innovation, and we are committed to encouraging an open and collaborative culture where different approaches, ideas, and points of view are respected and valued.

We aim to promote a workplace where everyone can contribute irrespective of race, colour, national origin, religion or belief, gender or gender identity, sexual orientation, age, marital status, pregnancy status, or disability.

Embedded Software Engineer (LDN) in London employer: Cirrus Logic

Cirrus Logic is an exceptional employer located in the vibrant city of Edinburgh, offering a dynamic hybrid working environment that fosters collaboration and innovation. With a strong commitment to diversity, employees benefit from a culture that encourages personal and professional growth, alongside opportunities to enhance their skills in embedded systems and automation. Join us to be part of a forward-thinking team where your contributions truly matter.

Cirrus Logic

Contact Details:

Cirrus Logic Recruitment Team

StudySmarter Expert Advice🤫

We think this is how you could land Embedded Software Engineer (LDN) in London

Join Local Tech Meetups

Get out there and mingle with fellow developers by joining local tech meetups. It’s a fantastic way to meet people who might be working at Cirrus Logic or know someone who does. Plus, you can pick up some trendy tech skills and trends while you're at it!

Contribute to Open Source Projects

Show off your coding chops by jumping into open-source projects. Not only does this give you practical experience, but it also gets you noticed in the dev community. You'll create a killer portfolio that speaks volumes about your skills to Cirrus Logic.

Tap into Online Developer Communities

Don’t underestimate the power of online developer communities like GitHub, Stack Overflow, and even Reddit. Participate in discussions, share your projects, and build your visibility. We can often find opportunities through these channels that can lead to a full-time gig at companies like Cirrus Logic.

Explore Job Boards Specifically for Tech Roles

Keep your eyes peeled on job boards that focus on tech roles. Sites like TechCareers or Stack Overflow Jobs can often have listings for companies like Cirrus Logic that might not show up on broader job sites. Make it a habit to check these regularly, and don’t hesitate to apply directly through our website!

We think you need these skills to ace Embedded Software Engineer (LDN) in London

Embedded Firmware Development
C/C++ Programming
RISC V Architecture
Arm Cortex M/A Architecture
Real-Time Signal Processing
Performance Optimisation
Memory Management

Some tips for your application 🫡

Show off your coding skills:When applying for a software engineering role, it's super important to showcase your coding skills. Make sure your CV includes your tech stack, any relevant programming languages you’re comfortable with, and examples of projects you've worked on. If you have a GitHub profile, link it up! We love to see code in action.

Tailor your portfolio:For a full-time role, we’d expect to see some solid examples of your work in your portfolio. Make sure to include at least two or three projects that highlight your problem-solving skills and your ability to work with different technologies. Focus on the projects that are most relevant to the position at Cirrus Logic.

Craft a killer cover letter:Your cover letter is your chance to stand out—make it personal! Explain why you want to work at Cirrus Logic and how your skills align with the role. Show us your passion for software development. We dig enthusiastic candidates who understand the value of collaboration and continuous learning!

Be clear and concise:When it comes to writing your CV and cover letter, clarity is key. Avoid jargon that could confuse us and stick to simple, direct language. Highlight your achievements with quantifiable results where possible, and keep everything easy to read. A well-organised application goes a long way!

How to prepare for a job interview at Cirrus Logic

Brush Up on Your Coding Skills

For a full-time software engineering role, it's crucial that we stay sharp with our coding abilities. Expect technical questions that might involve solving problems on the spot or discussing algorithms. Practise on platforms like LeetCode or HackerRank to get comfortable with the types of questions that often come up.

Know Your Tools and Frameworks

Make sure we’re well-acquainted with the tools and technologies listed in the job description. Familiarise ourselves with any specific frameworks or programming languages mentioned. If Cirrus Logic uses React or Node.js, for instance, be ready to discuss how we’ve used them in previous projects or coursework.

Showcase Your Projects

Bring along a portfolio that highlights our best work. This could be code samples, GitHub repositories, or any side projects we’ve built. Make sure we can talk through our thought process for each project, especially the challenges we faced and how we solved them—this shows our problem-solving skills in action.

Prepare for Behavioural Questions

While technical skills are key, full-time positions also require cultural fit. Be ready to discuss our previous experiences and how we handle teamwork, conflict, and deadlines. Brush up on the STAR method—Situation, Task, Action, Result—to clearly articulate our past experiences when discussing how we've contributed to a team.