header

At HUBER+SUHNER, we design and create essential components that transport power and data through networks. This is how our employees around the globe contribute to a world where people get and stay connected.

Senior Software Engineer

Cambridge | Full-time | Limited

This is a 12 month Fixed Term Contract.

Product software team is responsible for providing customer facing software that runs on our industry-leading all-optical network switch. The team is 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 optimizing 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 with Principle Software Engineer / System Engineer in defining software architecture for projects, considering product knowledge and design constraints.

Technical Expertise:
Demonstrate proficiency in software development using ‘C’, emphasizing Linux-based systems embedded environments. Contribute to Linux kernel, u-boot or bare metal development and customization to meet specific hardware and software requirements. Develop or review software verification plans with Test engineers. Analyse Testing results, understand product
improvement opportunities and drive implementation of changes.

Hardware Integration:
Utilize hands-on experience to integrate software with hardware, comprehending various hardware protocols (I2C, UART, SPI, USB) and reading hardware schematics effectively.

Cross-Functional Collaboration:
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.

Technical Leadership:
Lead and support project teams in overcoming technical challenges during the software development process. Assist in enhancing team efficiency by doing effective design and code reviews, mentor and train team members on products, features, and best practices for software development.

Process Orientation:
Produce the relevant project artefacts as required by the software development process. Provide specific documentation related to product design to meet regulatory compliance and organization requirements.

About you


  • Significant C programming language experience in an embedded environment. Experience of developing software targeted at ARM microcontrollers. Familiarity with coding standards and best practices.
  • Proven experience as a 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.
  • Experience of working with hardware interfaces, with demonstrable experience in HW debugging using tools.
  • Experience of working in an Agile software development environment and contribute significantly in generating relevant process artefacts.

Desirable skills

  • Experience with secure boot, boot-chain attestation and TPM 2.0 integration on u-boot and Linux kernel would be extremely beneficial.
  • Experience with software security that involves maintaining kernel with latest security patches, upgrading to new libraries.
  • Solid understanding of networking or bus based communication concepts, protocols, and security mechanisms including data storage, and preventing vulnerabilities.
  • Familiarity with Software build systems (Yocto).
  • Ability to write user space application software using POSIX APIs. Ability to integrate open source library into existing programs.
  • Continuous integration tools, and scripting languages to automate tasks and improve development workflows.
  • Experience with version control systems (e.g., Git) and issue tracking tools (e.g., JIRA).
  • Familiarity with gNMI, gNOI, gNSI and OpenConfig Yang model
  • Familiarity with authentication mechanisms, encryption protocols, and digital certificates.

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.

We can't wait to hear from you!

Apply now

You will hear back from us as soon as possible. For further information please contact:
Linda Yates
linda.yates@hubersuhner.com

counter-image