Embedded Engineer

Essential Recruitment
Dunstall, United Kingdom
2 days ago

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Working hours
Regular working hours
Languages
English
Experience level
Senior
Compensation
£ 70K

Job location

Dunstall, United Kingdom

Tech stack

ARM
Unit Testing
C++
Static Program Analysis
Code Coverage
Communications Protocols
Software Debugging
Ethernet
FreeRTOS
Hardware-In-The-Loop Simulation
Python
Matlab
Modbus
Real-Time Operating Systems
Secure Coding
Software Engineering
Transmission Control Protocol (TCP)
Management of Software Versions
Trunk-based Development
Digital Access Carrier System
GIT
Software Version Control

Job description

  • Translate customer and system requirements into software definitions, specifications and acceptance criteria.
  • Design software architecture and interfaces for embedded controllers: STM32, FreeRTOS
  • Develop, test and integrate control firmware/applications in embedded C/C++ to MIRSA-C:2012, IEC61508 and CERT-C standards.
  • Implement communication protocols (e.g., Modbus/TCP, serial comms (RS232/422/485), Ethernet) and integrate with analogue sensors/actuators using ADCs/DACs.
  • Create unit testing, static analysis, code coverage, HIL/SIL test benches and perform code peer-reviews to ensure quality and safety.
  • Generate design documentation (specifications, diagrams, test plans, release notes)
  • Develop in a trunk-based-development fashion following Semantic Versioning control utilizing Git for source control.
  • Support manufacturing, commissioning, testing and service teams in diagnosing and resolving issues.
  • Contribute to continuous improvement of software development processes, standards, and tooling.

Requirements

  • Degree in Software, Computer, Electrical/Control Engineering or equivalent experience.
  • Professional experience developing embedded or industrial control software.
  • Proficiency in one or more: C/C++ targeting ARM Cortex-M microcontrollers (STM32 preferred) Strong working knowledge of FreeRTOS or equivalent RTOS - task scheduling, inter-task communication, priority management, and real-time debugging.
  • Familiarity with MIRSA-C:2012, IEC 61508 functional safety concepts and CERT-C secure coding practices.
  • Experience with unit testing frameworks (e.g. Unity/Ceedling), static analysis tooling, and code coverage measurement.
  • Proficiency with Git in a trunk-based development workflow using semantic versioning.
  • Knowledge of communication protocols (Modbus/TCP, CAN, Ethernet (UDP/TCP)) and integration with industrial sensors with safety considerations for industrial systems.
  • Strong problem-solving skills, collaborative mindset and clear technical communication.
  • Python or MATLAB experience is desirable for test tooling and automation. Ability to read electrical/mechanical drawings is a plus.

Benefits & conditions

  • Sick pay
  • Company pension scheme
  • Employee discount
  • On site parking
  • Referral program

Apply for this position