Senior Embedded Firmware Engineer

TSL Products
Marlow, 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

Job location

Marlow, United Kingdom

Tech stack

Testing (Software)
Clean Code Principles
Adobe Flash
JavaScript
Microsoft Windows
Assembly Language
HTML5
Unit Testing
Booting (BIOS)
C++
CSS
Program Optimization
Computer Programming
Continuous Integration
Datasheets
Software Debugging
Linux
Web Development
Memory Management
Embedded Software
Firmware
FreeRTOS
Human-Computer Interaction
Joint Test Action (IEEE Standards)
Software Maintenance
Real-Time Operating Systems
Software Engineering
Subversion
Systems Integration
TCP/IP
Toolchain
TypeScript
Universal Asynchronous Receiver/Transmitter
USB
Diagnostic Tools
Multithreading
Serial Peripheral Interface
PIC Microcontroller
React
Video Protocols
Gitlab
GIT
Bare Metal
Build Tools
U-Boot
Api Design
REST
Hardware Debugging

Job description

  • Firmware Development of new and existing product: Writing efficient code in C/C++ or Assembly Language for microcontrollers and processors to control hardware
  • Hardware-Software Integration: Interpreting hardware schematics and data sheets to develop low-level drivers (Bare Metal and Linux), bootloaders, and peripheral drivers (GPIO, ADCs, Timers, UART, I2C, SPI, DMA, USB).
  • Debugging and Troubleshooting: Using diagnostic tools like logic analysers, oscilloscopes, and JTAG to diagnose and resolve complex system bugs
  • System Optimization: Improving firmware performance, memory usage, and power consumption for resource-constrained devices
  • Maintenance: Developing and maintaining software technical documentation, managing source code with Git, and providing product updates
  • Automated Build Systems: Use of CI/CD Pipelines (e.g. Gitlab)
  • Documentation and Testing: Contributing to End-User technical documentation, functional specifications, and conducting unit testing and validation

Requirements

Do you have experience in Unit testing?, * Comprehensive firmware design experience

  • C/C++ programming

  • Low level experience with Linux Operating System, Drivers, Kernel, U-BOOT, Device trees

  • Experience with Bare Metal coding on PIC/ARM/Intel designs

  • Processor/SPI/I2C/DMA/DDR/FLASH/eMMC bare metal development.

  • Excellent knowledge of high and low communications methods, e.g. TCP/IP, HTTP, SPI, I2C

  • Low level experience with Real Time Operating Systems

  • Use of schematics, oscilloscopes, data and logic analysers

  • Hands on hardware debugging

  • Multiprocess/Multithreaded development

  • Documenting development and processes

  • Software Testing/TDD

  • Degree or equivalent level qualification in relevant discipline

  • To be self-motivated and work with minimal supervision

  • Independent, self-starter who is also happy to be part of a team

  • Good interpersonal and communication skills

  • Desire to solve complex problems

  • Committed to efficient development processes

Advantageous Skills:

  • Windows development
  • Experience with Xilinx/FGPA toolchains for software development
  • Low level experience with FreeRTOS
  • Object-Orientated Design
  • Assembly Language
  • RESTful API/API development
  • Web Development (JavaScript, TypeScript, HTML5, CSS, React)
  • Distributed software development
  • CI/CD development approach
  • Git/SVN
  • Broadcast or Pro AV product experience
  • Audio and video protocols
  • Human Computer Interaction
  • Control System experience

Benefits & conditions

Pulled from the full job description

  • Employee assistance programme
  • Company pension

About the company

TSL Professional Products Ltd is a Global company with offices in Marlow, UK and Northridge, Los Angeles. We design, manufacture and market sophisticated electronic equipment to the world's leading broadcasters. With leading market positions in the fields of Advanced Control Systems, Audio Monitoring and Intelligent Power Management, as our company has grown, the demands on the development team have increased. Benefits include enhanced holidays, healthcare scheme, employee assistance programme, holiday purchase scheme, life assurance and pension

Apply for this position