Embedded Software Engineer

  • IT Jobs
  • SS2, Southend-on-Sea, Essex
  • Oct 29, 2018
Software Engineer

Job Description

Working with the Medical Research & Development team within the Research and Development Group designing, developing and introducing new products – specifically related to electronics & embedded software for mechatronic based Medical equipment. Qualification: Degree in Software Engineering or Computer Science 2:1 with strong element of Embedded Electronics. Minimum 7 years experience in the following areas coupled with a proven track record of designs working in the field. Essential Skills & experience: • Systematic approach to design software for mechatronic systems with theoretical and practical understanding of interactions between mechanics, electronics and software with respect to real time control and dynamics • Extensive use of model based design tools that include modelling of plant covering several domains (electrical, mechanical , fluid ) using Simscape , resultant simulation in simulink , design of digital controllers to optimally control the plant simulation and realisation of the controller algorithm on 32 bit microcontrollers in hardware and C code using MATLAB/Simulink embedded coders • Life safety critical software design – including redundancy, watchdog timers, deterministic graceful failure modes. • BLDC 3 phase motor control algorithm design including Field Orientated Control (FOC) methods • Software implementation of Digital Control system design – including PID loops, pole placement, bode design, digital compensator design • Programming of various Microcontrollers – ideally including Microchip dsPIC33, ARM Cortex M3, Texas instruments C2000 32 bit microcontroller with a focus on optimisation for real time closed loop motor control & sensing • Software to handle various communications including – I2C, SPI, UART, USB, Ethernet etc • Software to handle Sensor processing including – temperature, flow, pressure, speed, force, torque, vibration etc • Working knowledge and application of V development cycle including software validation & verification • Team player being able to work in a multi disciplined team including electronics, electrical, software , mechanical & manufacturing engineers • Real time control system design • RTOS based programming – eg freeRTOS, safeRTOS • bare metal C coding without RTOS. • Interrupt handlers & schedulers • Combination of C and assembler for optimising speed/memory usage • C programming - test code to exercise and run up hardware diagnostics • low level interfacing with Windows drivers • Working with device drivers - I2C, SPI, UART, Ethernet, CAN Ideal Skills & Experience • FPGA programming (ideally Altera cyclone III) with either VHDL or use of MATLAB HDL coder • FPGA IP modules and soft core processors ( NIOS II ) • Software interfacing with various communication hardware eg CAN, FlexRay • Knowledge of Industrial/medical regulations & standards and impact on software design - IEC62304 • Working knowledge and application of risk assessment driven and resultant DFMEA to produce robust & safe embedded electronics controls. • Low level programming – Assembler 8, 16, 32 bit • low level interfacing with Linux drivers

Listing Logo