Embedded Software Engineer - C/C++ - Malvern

Experis LTD
07 Aug 2017
31 Aug 2017
Contract Type
Full Time

Software Engineer - Up to 50k plus benefits - Malvern

Embedded Software Engineer - C/C++

Information about the role

An opportunity for enthusiastic embedded software engineers to develop software for cutting edge electronics systems. Working on technically challenging problems and a variety of projects, from rapid developments with tight time-scales to full scale system developments. You will work closely with specialists from across a number of disciplines which may include; RF, electronics and FPGA design, digital signal processing, secure products, navigation products, and cryptography. You will also work throughout the engineering lifecycle, applying rigorous engineering practices; analysing, designing, implementing, testing, supporting and maintaining solutions that solve the mission-critical problems of our customers.

This is research and development focused role for new Product Development for Global Satellite and Navigation Systems. Working across Private, Public Sector and Security based organisations. The role will be initially concentrating on new Product Development within a quality orientated engineering environment for a cutting edge satellite navigation product.

Key Accountabilities

  • Responsible to Project Design Authority for software development and related software engineering activities
  • Produces written documentation (including presentation material) of technical work in accordance with Project requirements


  • Rapid learning of current technologies in support of research and products
  • Innovation in the application/integration of digital hardware technologies to build novel embedded systems
  • Communicating ideas with multiple stakeholders and customers, at all levels, technical, non-technical and management

Essential Skills and Experience

  • Ability to develop in C++ and C
  • Experience of working in a rigorous engineering environment using configuration management and change management processes and tools
  • Knowledge and experience of the specification, design and implementation of complex software solutions
  • Experience of developing for embedded platforms, including interfacing to peripheral hardware
  • Experience using software design, development environment and test tools such as Enterprise Architect, Visual Studio, etc
  • Experience of designing software using UML
  • Excellent verbal and written technical English communications skills

Desirable Experience

  • RTOS for embedded platforms
  • Assembly language programming
  • Development on SPARC or ARM processors
  • Understanding of encryption algorithms
  • Implementing to applicable coding standards
  • Unix-based operating systems, SE Linux and methods for securing operating systems
  • High assurance software development (safety and/or security)…
  • Developing software security solutions including optimised cryptographic algorithms, network security etc
  • Working on mixed software/FPGA systems
  • VHDL
  • Hardware design, implementation and debugging
  • Data/memory management
  • Optimisation of hardware interfaces for software performance
  • Supporting tools such as Matlab for solution modelling and verification
  • Global Navigation Satellite Systems (GNSS)
  • Other software languages e.g. C#, Python, MFC
  • Working in an Agile development team