We are seeking a Software Engineer to design, develop, test, and maintain application, middleware, and integration software for connected products.
Key Responsibilities
- Design, develop, integrate, and maintain software modules and APIs.
- Develop reliable and maintainable application and middleware components.
- Implement REST APIs and messaging interfaces.
- Develop unit, integration, and automated tests.
- Maintain and improve CI/CD pipelines.
- Analyze software defects and perform root-cause analysis.
- Implement robust and secure solutions following established coding standards.
- Follow IEC 62304 software lifecycle processes where applicable.
- Apply secure coding and cybersecurity best practices.
- Participate in Agile ceremonies, technical discussions, architecture/design reviews, and code reviews.
- Collaborate with embedded, systems, hardware, QA, and product teams.
Required Skills
- Strong programming experience in one or more of:
- C++
- C#
- Java
- Python
- Experience developing REST APIs and messaging-based interfaces.
- Strong knowledge of Git and version-control practices.
- Experience with unit and integration testing.
- Experience with test automation and CI/CD.
- Understanding of software development lifecycle processes.
- Knowledge of cybersecurity and secure coding fundamentals.
- Solid debugging and problem-solving skills.
Preferred
- Experience with IEC 62304 or other regulated software development processes.
- Experience developing software for connected or embedded products.
- Experience in medical devices or safety-critical products.