Senior Software Engineer

Huber+Suhner
Cambridge, UK
15 days ago
Apply on www.collegerecruiter.com
Prepare application

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Experience level
Expert
Experience required
8 years minimum
Working hours
Regular working hours

Tech stack

C (Programming Language) Application Programming Interfaces (APIs) Agile Methodology Software Applications JIRA Computer Networks Continuous Integration Software Debugging Linux Programming Tools Memory Management Issue Tracking Systems
+27 more
Key Management Linux Kernel Linux System Administration Netconf Open Source Technology Posix Software Product Management Program Analysis Software Architecture Webui Software Engineering Universal Asynchronous Receiver/Transmitter USB Network Switches Scripting Data Storage Technologies Serial Peripheral Interface Software Verification Software Security Git Yocto Bare Metal Build Tools U-Boot Software Coding Software Version Control Vulnerability Analysis

Job description

The Product Software Team are responsible for providing customer facing software that runs on our industry-leading all-optical network switch. The team are responsible for managing two different software stacks running on different PCBs. The network software (NIC SW) implements various L2/L3 protocols and allows customers to communicate with the optical switch using the desired interfaces that includes TL1, Netconf, Restconf and WebUI. The control software (DSP SW) is a bare metal stack that receives user commands through NIC SW and controls the movement and position of piezoelectric actuators.

The Senior Software Engineer is responsible for enhancing and optimising Polatis products, focusing on software architecture, design, integration, and ensuring seamless collaboration across cross-functional teams. This role involves hands-on technical contributions, mentorship, and aiding in the overall growth and efficiency of the software development team.

Software Architecture and Design:

Collaborate closely with the Software Architect to shape both system design and test pass criteria for all assigned projects, ensuring cohesive alignment with product architecture, user requirements, and technical constraints., The role involves developing software in C for Linux-based embedded systems, contributing to the user-space software stack to enhance product functionality. It requires close collaboration with quality engineers to design and review software verification plans, as well as analysing test outcomes to identify improvement opportunities. The position also includes investigating customer-reported bugs, identifying root causes, and delivering effective fixes to uphold product quality and customer satisfaction., Utilise hands-on experience to integrate software with hardware, comprehending various hardware protocols (I2C, UART, SPI, USB) and reading hardware schematics effectively., Collaborate with cross-functional teams to define project scopes and contribute to planning and estimation of work packages. Collaborate with production, NPI, and customer support teams to address potential software issues during production and in the field, ensuring timely resolution.

Requirements

8+ years of product development experience in an embedded environment using C programming language. Experience of developing software targeted at ARM microcontrollers. Familiarity with coding standards and best practices.

Proven experience as a Senior Software Engineer, with a strong focus on Linux-based systems development. Ability to use number of development tools for system administration and debugging. Skills in optimizing software for performance and memory usage. Advanced understanding of static and dynamic analysis tools.

Experience with Hardware root of trust (RoT), Secure boot and TPM. Experience with security scanning tools, management of software vulnerabilities. Familiarity with security regulations.

Experience with software security that involves code signing, private key management using HSM. Ability to maintain Linux kernel with latest security patches, upgrading to new libraries.

Advanced understanding and contributions in Yocto build systems.

Experience with writing Linux user space application software using POSIX APIs. Ability to integrate open-source library into existing programs.

Experience of working in an Agile software development environment and contribute significantly to generating relevant process artefacts.

Familiarity with Jenkins CI/CD pipelines. Continuous integration tools, and scripting languages to automate tasks and improve development workflows., * Solid understanding of networking or bus-based communication concepts, protocols, and security mechanisms including data storage, and preventing vulnerabilities.

  • Experience in gRPC, gNMI and gNSI
  • Experience with version control systems (e.g., Git) and issue tracking tools (e.g., JIRA).

About the company

Why HUBER+SUHNER Polatis?

Our aim is to be the employer of choice and as such you can be assured of a market leading remuneration package that matches your skills and experience.

Your employment and development is at the heart of our “Fundamentals”.

We have an entrepreneurial and collaborative culture within the business.

Apply for this position

This job is hosted externally. Click below to view the full posting and apply.

Apply on www.collegerecruiter.com
Prepare application

Good distractions

Talks and stories from around this role — technically off-topic, practically not.

5:35 min

Direct hardware communication using the Web USB API

Rowdy Rabouw Rowdy Rabouw · World Congress 2025

6:21 min

Investigating push inefficiencies with upstream Git experts

Jonathan Creamer · Coffee With Developers

3:05 min

Integrating an assistant application with Jira software

Felix Augenstein · LIVE

1:39 min

Speaker introduction and software engineering background

Daniel Raniz Raneland · LIVE

2:55 min

Bidirectional hardware communication using the web USB API

George Cave · World Congress 2023

43 sec

Software engineering journey and local Manchester roots

Jonathan Tang · Coffee With Developers

Videos

See all

Related articles

See all