Haystack
← Back to Jobs
Temporary/Casual
Technology
ER

Software Engineer

Eclectic Recruitment LtdUK, UK🇬🇧United KingdomPosted 12 Oct 2026

Quick Overview

Seniority
Mid Senior
Employment type
Temporary/Casual
Work mode
Hybrid
Location
UK, UK, United Kingdom
Posted
Yesterday
CGit

Job Description

A fantastic opportunity has arisen for a Software Engineer to join an engineering team in Cambridge, working on embedded Linux software for the company's products, from architecture and design through to integration with the hardware.

This role takes ownership of software modules from concept to deployment, working closely with the Software Architect, senior engineers, hardware designers and test engineers to enhance and optimise the company's products.

Key Responsibilities:

  • Working closely with the Software Architect and senior engineers to refine and implement scalable software architecture
  • Developing key software components, ensuring maintainability and performance, and contributing to architectural reviews
  • Taking ownership of software modules, driving development from concept to deployment
  • Adding features to existing and new code bases, using C in embedded Linux environments
  • Collaborating with test engineers to define verification strategies and ensure thorough test coverage
  • Analysing complex test results and implementing corrective actions with minimal supervision
  • Working with hardware designers on software-hardware integration, interpreting hardware schematics and managing communication protocols (I2C, UART, SPI, USB)
  • Troubleshooting and resolving hardware-software interaction issues efficiently
  • Working with cross-functional teams, including production, to diagnose and resolve software issues
  • Producing project artefacts and product design documentation to meet the software development process, regulatory compliance and organisational requirements

The ideal candidate would have:

  • Familiarity with Git for source code management and collaboration
  • Experience with continuous integration tools and scripting languages to automate tasks and improve development workflows
  • Understanding of networking protocols and security mechanisms, including data storage and preventing vulnerabilities

The ideal candidate must have:

  • A degree in Computer Science, Electronics or a related field (or equivalent experience)
  • 3+ years of C programming experience in an embedded environment, with familiarity with ARM microcontrollers, coding standards and best practices
  • 3+ years of Linux-based systems development, including some experience of the Linux boot process, DTB and kernel drivers
  • Ability to write user space applications using POSIX APIs, integrate open-source libraries into existing programs and use development tools for system administration and debugging
  • 3+ years of experience working with hardware protocols (I2C, UART, SPI, USB) and the ability to read simple hardware schematics
  • Knowledge of Yocto, with the ability to modify it to support new platform designs and versions
  • Clear verbal and written communication, especially when discussing technical issues or documenting findings
  • An analytical, methodical approach with strong attention to detail, and a proactive attitude to learning and contributing to team goals

If this role looks like your next challenge, please contact Jack ASAP or apply via this advert!

We endeavour to reply to every candidate, but if you haven't heard back within 10 days, please understand that you have unfortunately been unsuccessful for this position, or the position has been filled. Please call the office or send an email to discuss other potential positions.

Similar jobs