Senior Software Engineer

Impellam Group
Durham, United Kingdom
7 days ago

Role details

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

Job location

Durham, United Kingdom

Tech stack

Keil
Software Applications
Bluetooth Low Energy (Bluetooth)
C++
Cloud Computing
Cloud Engineering
Computer Programming
Software Debugging
Linux on Embedded Systems
Embedded Software
Firmware
Field-Programmable Gate Array (FPGA)
FreeRTOS
Python
Matlab
Modular Design
Near Field Communication
Radio-Frequency Identification
Programming Environments
Real-Time Operating Systems
LoRaWaN
Software Engineering
Web Applications
Wi-Fi Technology
Scripting (Bash/Python/Go/Ruby)
Bare Metal
Data Management
Software Coding
Software Version Control

Job description

We are currently recruiting for a Senior Software Engineer to join a Med Tech company in the North East on a permanent basis.

You will provide technical expertise and leadership across medium to large-scale projects, contributing innovative solutions and will act as a trusted authority in embedded software development.

This is a key role, where you will play a part in shaping technological innovations, supporting technology team strategy, and mentoring colleagues to reach their potential.

Responsibilities;

  • Developing firmware and software applications for embedded microcontrollers, microprocessors, PCs, and mobile devices.
  • Collaborating with hardware teams to create block diagrams, IO tables, and user manuals.
  • Adhering to defined Software Development Procedures, applying version control, modular design, coding standards, and task management tools.
  • Participating in project scoping, planning, and technical reviews.
  • Interpreting client and product requirements, producing system designs and functional specifications.
  • Setting up, planning, and executing experimental work, analysing and reporting results.
  • Coaching, mentoring, and developing colleagues, fostering a culture of continuous capability development.

Requirements

The successful candidate will be educated to a minimum of HNC or Foundation Degree level (or equivalent) in an engineering discipline, have significant industrial experience at a senior level OR have a Degree/Master's/PhD (or equivalent) in an engineering discipline with relevant industrial experience and;

  • Possess significant technical expertise in embedded software development and complex problem solving
  • Will exhibit professional mastery of software development principles and practices, with experience across the full lifecycle (prototype, design, implementation, debug, test, documentation) gained in academic or industrial environments
  • Have a working knowledge of low-power programming environments and tools (e.g. Keil/IAR)
  • Have experience in bare-metal and RTOS programming using C/C++
  • Demonstrate familiarity with wireless communications (Wi-Fi, RFID, NFC, Bluetooth Low Energy, LoRaWAN)
  • Be able to demonstrate knowledge of low-level communications systems (I2C, SPI, CAN, RS-485)

Desirable

  • Experience with safety-critical applications (ideally Medical Devices or SAMD)
  • Knowledge of radio protocols, FreeRTOS/Zephyr, IoT/cloud programming, or mobile/web app development
  • Electronics design, MATLAB simulation, Python/scripting, FPGA or Embedded Linux experience
  • Experience of the full range of software development from firmware to cloud computing would be useful, with a particular focus on app and cloud development and a good understanding of cloud data management and analysis

Apply for this position