Biomerieux S.Aposted 17 days ago
Full-time • Mid Level
Remote • Hazelwood, MO
Chemical Manufacturing

About the position

This role is based in St Louis with an onsite requirement and cannot be remote. The Instrument Tech Transfer team develops new equipment, procedures, and test software for IVD medical device products that deliver rapid, high-impact, actionable results in immunoassays, microbiology, and molecular biology. The Senior Software Engineer will play a critical role in developing and supporting software that directly impacts patient health and consumer product safety. This role requires a blend of embedded system experience, desktop application development, and software architecture design, all within a regulated environment. Key technologies used in this role include, but are not limited to: C#, SQL, Python, WPF, .NET MAUI, USB, CAN, and other various communication protocols. This role is ideal for a software engineer who has experience at the intersection of embedded systems and desktop application development, understands the nuances of regulated software design, and is eager to contribute to an evolving software development environment.

Responsibilities

  • Write, test, and maintain high-quality C# code for software applications, ensuring compliance with quality and regulatory requirements.
  • Collaborate with cross-functional teams to design software solutions and system architecture, emphasizing flexibility and maintainability over performance optimization.
  • Work closely with the R&D Firmware Engineering team to understand and interact with embedded systems using USB, CAN, and serial communication protocols.
  • Develop software that interfaces with external devices, ensuring robust communication and data handling.
  • Design software with FDA, QSR, and ISO quality system regulations in mind, ensuring adherence to 21 CFR Part 11 requirements.
  • Develop and manage software release processes, considering desktop software installation challenges, including network-based deployments.
  • Establish software development best practices, set up Jira workflows, and introduce process improvements tailored to an evolving software environment.
  • Create and maintain accurate design documents that align with the actual software implementation, ensuring traceability and compliance with quality standards.
  • Develop unit tests, integration tests, and performance tests to validate software functionality, ensuring robustness and reliability.
  • Utilize Git and participate in code reviews to maintain high-quality code standards and knowledge sharing within the team.
  • Identify and grade potential risks and failure modes in software design and implementation. Develop mitigation and control methods to prevent failures and ensure system reliability.

Requirements

  • A Bachelor's degree in Computer Science, Software Engineering, or related field with 4 years of software development experience OR Master's degree in Computer Science, Software Engineering, or related field with 2 years of software development experience.
  • High School Diploma/GED with 8 years of software development experience OR Associates degree or professional certification with 6 years of software development experience.
  • Proficiency in C# for desktop application development, SQL, Python, WPF, and .NET MAUI (nice to have).
  • Understanding of USB, CAN, and serial communication protocols for interacting with firmware and embedded devices.
  • Experience with structured software development methodologies (Agile, Scrum) and maintaining software quality within a regulated environment.
  • Ability to establish software workflows, introduce new tools, and drive process improvements in a growing software team.
  • Experience designing software with regulatory constraints in mind, focusing on modularity and minimizing non-product software validation (NPSV) regression risks.
  • Familiarity with unique challenges of deploying desktop applications, particularly in network-based environments.
  • Strong analytical and troubleshooting abilities to resolve complex software development challenges.
  • Effective at working with cross-functional teams, including product managers, QA engineers, and firmware developers.
  • Willingness to learn and apply new technologies and software design approaches to meet project needs.

Nice-to-haves

  • Experience with .NET MAUI.
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service