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.
Software Engineer in Cambridge employer: Eclectic Recruitment Careers
Join a dynamic and innovative engineering team that values collaboration, creativity, and continuous improvement. As an Engineering Delivery Lead, you will benefit from a supportive work culture that prioritises employee growth through ongoing training and development opportunities. Located in a vibrant area, our company offers a unique chance to work on cutting-edge projects while enjoying a healthy work-life balance and a strong sense of community.
Contact Details:
Eclectic Recruitment Careers Recruitment Team