An Embedded Software Engineer would be expected to have a reasonable understanding of electronic hardware in order to code software for control of the intended application.

A good command of writing efficiently in Embedded C, C++ or C# depending on the company technical strategy is needed depending on seniority of role. It is necessary to be able to work in a team environment as you will need to interface regularly with the hardware team and other members of your software team if you are part of designing a complex system. Most of our clients ask for some testing experience to ensure you either carry out the testing or can develop code which can be easily tested.

The core responsibilities could cover:


  • Embedded software design and development in C, C++ or C#
  • Develop base infrastructure code
  • Optimise of software on embedded platforms
  • Work as part of a software development team
  • Participate in software design and architecture
  • Participate in peer software code reviews
  • Develop software testing techniques

Experience typically requested by our clients: 


  • Embedded Linux and Multi-core development experience
  • Embedded S/W development (ICE, JTAG etc)
  • Knowledge of Real Time Operating Systems (RTOS) and memory management
  • Experienced working with version control systems
  • Makefile systems (make, CMake)
  • Electronics hardware knowledge is very useful

Have A Role To Fill?

Please get in contact with us via our telephone number 01827 62678 or fill in the form below and a member of our team will be in contact with you to discuss how we can help you.

Register A Role

1 About You
2 About The Vacancy