- Designing embedded software solutions to meet allocated requirements
- Software coding to implement agreed designs
- Undertaking testing and verification activities
- Ensuring software development standards, policies and procedures are adhered to
- Scheduling work to meet target timescales and budget demands
- Working closely with other teams, e.g. electrical, during solution development
- Proactively reporting upwards to management and the business, so that they are informed of the work currently in development
- Embedded C programming ability and experience in other modern programming languages, preferably C#.
- Understanding of embedded systems concepts and related protocols, e.g. CAN, SPI, RS-422.
- A thorough understanding of the software development lifecycle from design to deployment, including supporting in house and customer trials
- Experience with embedded RTOS or Bare Metal operating systems
- Experience with middleware and Service Oriented Architectures (SOA)
- Knowledge of safety standards (DEF STAN 00-056, IEC 61508)
- Knowledge of electronic circuits
- Experience using Matlab/Simulink