Senior Firmware Engineer

Smartbox Assistive Technology
Gloucester, UK
3 months ago

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Experience level
Expert
Experience required
8 years minimum
Working hours
Regular working hours
Job source

Tech stack

Testing (Software) Board Bringup Algorithm Design Application Layers Arduino Automation of Tests Bash Shell C Sharp (Programming Language) C++ (Programming Language) Software Quality Continuous Integration Data Structures
+18 more
Software Debugging Linux Linux on Embedded Systems Embedded Software Fault Tolerance Firmware Java GUIs Python (Programming Language) Real-Time Operating Systems Mockito Big O Software Engineering Verification and Validation (Software) System Testing Strategies of Testing Information Technology Api Design Pyramid

Job description

Are you a passionate Firmware Engineer wanting to make a real impact by giving a voice to those without speech Smartbox is looking for a dedicated individual to help improve the lives of people with disabilities., * Technical Project Delivery: Deliver multi disciplinary projects, meeting scope, time, budget and quality requirements, and coordinating others as needed.

  • Firmware Architecture and Lifecycle: Develop reliable, portable firmware with a long-life cycle.
  • Firmware Development: Design, develop and maintain embedded firmware in C for Zephyr RTOS and Embedded Linux, including board bring up, drivers and HALs.
  • Code Quality and Standards: Set and uphold coding, documentation and review standards, ensuring best practices in architecture, modularity, fault tolerance and testability.
  • Test strategy and Automation: Apply strong automated testing practices following the Test Pyramid, including unit, component, contract and hardware in the loop tests, with CI automation to prevent regressions.
  • Test Software and Tooling: Build and maintain automated test harnesses, GUIs and utility tools (e.g. Python, C#) to support development, validation and manufacturing.
  • Libraries and Developer Experience: Create libraries and demo applications in C compatible languages (C#, C++) to support subsystem validation and cross team integration.
  • Verification and Validation: EAD verification through lab testing, user trials and real world use, ensuring documentation supports regulatory compliance.
  • Quality Assurance: Analyse and resolve quality issues promptly, feeding insights back into designs and processes to drive continuous improvement.
  • Technical Strategy: Contribute to strategy for reliable, mission critical firmware, clearly communicating trade offs and enabling strong decision making.
  • Mentoring and Leadership: Mentor Engineers, provide coaching and support, and help foster a positive, collaborative team culture.

Requirements

  • Degree or equivalent experience in an engineering subject (Electronics, Computer Science, Software), Physics, Mathematics, or another scientific subject.
  • 8+ years of experience in embedded software development in C.
  • A strong knowledge of Computer Science fundamentals in data structures, algorithm design, problem-solving, and complexity analysis.
  • A strong grounding in embedded software architecture, with a focus on maintainability, modularity, fault-tolerance and testability.
  • Confident and experienced with automated testing, including unit, integration and system tests, mocking and automation frameworks.
  • A strong understanding of API design and the creation of clear, stable abstractions for hardware / firmware interaction.
  • Skilled at debugging in constrained environments and using hardware / software debugging tools.
  • A proven track record of innovation and quality software development throughout the entire software product lifecycle.
  • Ability to solve complex technical problems in elegant and maintainable ways, demonstrating systems thinking across hardware, firmware and application layers.
  • Experience with embedded platforms (for example: Embedded Linux, Arduino, STM32, Nordic, Zephyr RTOS).
  • A passion and drive for excellence in software craftsmanship.
  • Linux, Bash / shell, CI (Continuous integration) experience.
  • Ability to read electronics schematics and collaborate effectively with Hardware Engineers during bring-up and debugging.
  • Technical leadership through influence able to guide architecture and standards, mentor others, and improve team-wide practices.
  • Practical, proactive mindset comfortable taking initiative and working through ambiguity in a fast-moving team.
  • Proven experience in people or team management, with the ability to lead, motivate, and develop others.
  • Strong communication and interpersonal skills, with the ability to build positive working relationships at all levels.
  • Proven ability to foster high performing, engaged, and collaborative teams.

Benefits & conditions

Explore competitive salary, private medical insurance, hybrid working, wellness benefits and paid volunteering days.

About the company

Smartbox is a leader in assistive communication technology, with products used globally by people with diverse needs. Our values, passionate, caring, empowering, achieving together and enabling change, guide everything we do.

Our Inclusive Culture

We believe in giving everyone a voice. Joining Smartbox means joining a diverse, collaborative team and supporting a community that relies on our technology.

Our Commitment to Sustainability

We prioritise sustainability, aiming to reduce our environmental impact. By joining us, you ll help support a more inclusive and sustainable future.

Our D&I Commitments

  • We are a Disability Confident Employer and a Founding Partner of Purple Tuesday.
  • Our recruitment practices are inclusive and barrier free, with adjustments available throughout the process and your career.
  • We believe in adding to our culture. Our diverse team shapes products that reflect our users.

Apply for this position

This job is hosted externally. Click below to view the full posting and apply.

Apply on find.jobs

Good distractions

Talks and stories from around this role — technically off-topic, practically not.

3:51 min

Technical skills and collaborative mindsets for mobility engineering roles

Georg Kühberger +1 · LIVE

3:04 min

Rethinking the testing pyramid and deleting risk-free tests

Luise Freese Luise Freese · WWC 2025

52 sec

Running persistent Linux environments directly on Windows

Ben Breard Ben Breard · WWC 2025

3:01 min

Evaluating generated sorting algorithms and application memory complexity

Markus Walker Markus Walker · WWC 2023

4:42 min

Testing interconnected microservices and navigating the test pyramid

Yousaf Nabi Yousaf Nabi · WWC 2025

3:55 min

Demonstrating .NET installation on Debian and Azure Linux

Silvano Coriani Silvano Coriani · Europe 2026 Virtual

Videos

See all

Related articles

See all