Product software team is responsible for providing customer‑facing software that runs on our industry‑leading all‑optical network switch. The team manages 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 interfaces such as 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.
Software Architecture and Design
* Work closely with the Software Architect and senior engineers to refine and implement scalable software architecture.
* Lead the design and 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.
* Analyze complex test results and implement corrective actions with minimal supervision.
Hardware Integration
* Lead 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 organisational requirements.
Your profile
Bachelor’s degree in computer science, electronics, or a related field (or equivalent experience).
* 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
* Experience in C programming language within an embedded environment.
* Familiarity with ARM microcontrollers.
* Familiarity with coding standards and best practices.
* Experience in Linux‑based system development including Linux boot process, DTB and kernel drivers.
* Ability to write user‑space application software using POSIX APIs.
* Ability to integrate open‑source libraries into existing programs.
* Proficiency with development tools for system administration and debugging.
* Version control: familiarity with Git for source code management and collaboration.
* Understanding of hardware protocols (I2C, UART, SPI, USB) and ability to read simple hardware schematics.
* Clear verbal and written communication skills, especially for discussing technical issues or documenting findings.
* Knowledge of software build systems (Yocto) and ability to modify Yocto for new platform designs or versions.
* Experience with continuous integration tools and scripting languages to automate tasks and improve development workflows.
* Solid understanding of networking protocols and security mechanisms, including data storage and vulnerability prevention.
#J-18808-Ljbffr