Software Engineer

Overview

We are seeking an experienced Software Engineer to join our client's team, developing high‐quality embedded software solutions across a range of innovative products. This role is ideal for someone with strong C and C++ programming skills, hands‐on embedded systems experience, and solid working knowledge of Linux environments.

Key Responsibilities

  • Design, develop, and test embedded software using C and C++, ensuring reliability, performance, and maintainability.
  • Work within Linux‐based environments to build, debug, and optimise system‐level code.
  • Collaborate with hardware, firmware, and systems engineering teams to integrate software with embedded platforms.
  • Troubleshoot, diagnose, and resolve issues related to embedded systems, performance, and device behaviour.
  • Contribute to code reviews, documentation, version control, and continuous improvement of development processes.
  • Support full software lifecycle delivery—from concept and design through to deployment and maintenance.

Key Skills & Experience

  • Strong programming experience in C and C++.
  • Proven background in embedded software development, including low‐level programming.
  • Practical experience working with Linux, including debugging, scripting, and system-level interactions.
  • Ability to write clean, efficient, and well‐structured code with strong problem‐solving skills.

Desirable

  • Knowledge of real‐time operating systems (RTOS) such as Linux.
  • Experience with unit testing frameworks and automated testing for embedded systems.
  • Exposure to continuous integration/continuous deployment (CI/CD) practices.

Personal Attributes

  • Detail‐oriented, analytical, and proactive in solving technical challenges.
  • Strong communicator who can work effectively in cross‐functional teams.
  • Passionate about delivering robust, high‐quality embedded software.

Job Details

Company
Impellam Group
Location
Yateley, England, United Kingdom
Posted