Senior Firmware Engineer

Smartbox Assistive Technology
Gloucester, United Kingdom
12 days ago

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Working hours
Regular working hours
Languages
English
Experience level
Senior

Job location

Gloucester, United Kingdom

Tech stack

Testing (Software)
Board Bringup
Algorithm Design
Application Layers
Arduino
Automation of Tests
Bash
C Sharp (Programming Language)
C++
Software Quality
Continuous Integration
Data Structures
Software Debugging
Linux
Linux on Embedded Systems
Embedded Software
Fault Tolerance
Firmware
Java GUIs
Python
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