Software Engineer

HUBER+SUHNER
Cambridge, UK
18 days ago
Apply on www.indeed.com
Prepare application

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Experience level
Experienced
Experience required
3 years minimum
Working hours
Regular working hours
Job source

Tech stack

C (Programming Language) Application Programming Interfaces (APIs) Software Applications Booting (BIOS) Code Coverage Communications Protocols Continuous Integration Software Debugging Linux Programming Tools Linux on Embedded Systems Hardware Design
+18 more
Linux System Administration Network Protocols Open Source Technology Posix Software Architecture Software Engineering Universal Asynchronous Receiver/Transmitter USB Scripting Software Modules Data Storage Technologies Serial Peripheral Interface Git Build Management Yocto Information Technology Software Coding Software Version Control

Job description

The Software Engineer plays a key role in enhancing and optimizing H+S Polatis products, with a strong focus on software architecture, design, and integration. This position demands hands-on technical contributions and active collaboration across cross-functional teams to drive product excellence and team efficiency.

Software Architecture and Design:

  • Work closely with the Software Architect and senior engineers to refine and implement scalable software architecture. Development of key software components, ensuring maintainability and performance.
  • Contribute to architectural reviews and provide feedback on design decisions.

Technical Expertise:

  • Take ownership of software modules, driving development from concept to deployment. Add features in existing or new code base demonstrating strong proficiency in C programming within embedded Linux environments.
  • Collaborate with test engineers to define verification strategies and ensure thorough test coverage.
  • Analyse complex test results and implement corrective actions with minimal supervision.

Hardware Integration:

  • Collaborate with hardware designers and contribute in software-hardware integration efforts, interpreting hardware schematics and managing communication protocols (I2C, UART, SPI, USB).
  • Troubleshoot and resolve hardware-software interaction issues efficiently

Cross-Functional Collaboration:

  • Collaborate with cross-functional teams including production to understand and diagnose potential software issues and resolve them.

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 organisation requirements.

Requirements

  • Bachelor’s degree in Computer Science, Electronics, or related field (or equivalent experience)
  • 3+ years of experience in C programming language, its application in an embedded environment. Familiarity with ARM microcontrollers. Familiarity with coding standards and best practices.
  • 3+ years of experience in Linux-based systems development including some experience in Linux boot process, DTB and kernel drivers. Ability to write user space application software using POSIX APIs. Ability to integrate open-source library into existing programs. Ability to use number of development tools for system administration and debugging.
  • 3+ years of experience working on hardware protocols (I2C, UART, SPI, USB) and ability to read simple HW schematics.
  • Knowledge of Software build systems (Yocto) and ability to modify Yocto to support a new platform design, new versions.

  • Communication: Clear verbal and written communication, especially when discussing technical issues or documenting findings.
  • Problem-Solving: Analytical mindset with a willingness to explore and learn from challenges.
  • Adaptability: Open to feedback and new technologies.
  • Initiative: Proactive in learning and contributing to team goals.
  • Attention to Detail: Careful and methodical approach to coding and testing.

Desirable skills

  • Familiarity with Git for source code management and collaboration.
  • 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.

Benefits & conditions

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.indeed.com
Prepare application

Good distractions

Loading talks and stories from around this role…