SOFTWARE ENGINEER (EMBEDDED)
Role details
Job location
Tech stack
Job description
Your tasks 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 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.
System Design and Architecture: Make significant contribution in an existing code base to add new features and enhancements working with software architect and team lead. Document low level design aligned with the product architecture.
Firmware Development: Develop, debug, and optimize bare-metal firmware for ARM-based microcontrollers ensuring efficient and reliable operation of embedded systems.
Hardware Collaboration: Work closely with hardware engineers to review schematics, develop and debug hardware drivers, and ensure seamless hardware-software integration.
Interface Implementation: Implement and optimize low-level device interfaces such as UART, SPI, GPIO, ADC, DAC, and I2C devices to facilitate communication between peripherals and microcontrollers.
System Testing and Validation: Use advanced diagnostic tools and test equipment to validate and troubleshoot embedded systems, ensuring high-quality and reliable performance.
Agile Development Participation: Actively contribute to Agile development processes, including sprint planning, daily stand-ups, and retrospectives. Generate and maintain relevant process artifacts.
Continuous Improvement: Identify areas for improvement in existing systems and processes, propose innovative solutions, and drive continuous improvement initiatives., Documentation: Create and maintain comprehensive documentation for design specifications, code, and system functionality, ensuring clear communication and knowledge sharing.
Requirements
Your profile 3+ years in the embedded systems industry, with a strong background in bare-metal systems and extensive exposure to ARM-based microcontrollers. Expert in solving complex problems that traverse both hardware and software domains.
Proficient in low-level programming using embedded C, with the ability to write efficient and reliable code for performance-critical applications.
Proficient in using debugging tools such as JTAG, ICE, and logic analysers to diagnose and resolve hardware and software issues.
Skilled in reading and understanding hardware schematics and experienced with FPGA-based designs. Familiar with debugging hardware and firmware issues in collaboration with cross-functional teams.
In-depth knowledge of various low-level device interfaces including flash, SPI, UART, GPIO, ADC, DAC, I2C, and more. Able to optimize communication between peripherals and microcontrollers.
Knowledge of scripting languages such as Python or Bash to automate repetitive tasks, test scripts, and build processes.
Strong written and verbal communication skills to effectively collaborate with cross-functional teams, present technical information, and document project progress.
Desirables
Knowledge about motion control systems
Proven track record of working in Agile software development environments, actively contributing to the generation and improvement of process artifacts, and continuously enhancing development methodologies.
Experience or working knowledge of secure boot, and HW Root of Trust establishments. Knowledge of attestation., Degree level or equivalent in numerate discipline with courses on embedded programming.
Benefits & conditions
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!