Summary: A creative problem solver with the ability to think out of the box and a highly developed desire to deliver software to improve the lives of our patients. A strong developer with proven ability to follow through on software development and verification tasks from requirements analysis, prototyping, software architecture design, implementation and testing all the way to roll-out and operational support. A person who is completely comfortable in a structured and regulated environment, and who can move fluidly between writing production code and rigorously verifying it.
In This Role, You Will: - Contribute to design and development of test plans and protocols for software design verification, and execute and document verification activities, test reports and summary documentation
- Participate in cross-functional requirements analysis and software risk management activities; contribute to definition and documentation of software requirements
- Translate high-level software requirements into detailed and thoroughly documented software implementations
- Write high-quality, high-performance C++ based software for real time Urology Software Applications for medical devices
- Participate in design and code reviews; contribute to design verification activities to prove that the software correctly implements requirements
- Contribute to design and implementation of automated testing and continuous integration processes
- Ensure medical device software complies with applicable regulatory standards and that development documentation is developed in accordance with FDA guidance
- Actively contribute to and collaborate on software-related system validation activities
- Support creation of regulatory submission documentation and support audit-related activities
- Support cross-functional team with product cybersecurity assessments
- Collaborate with a cross-functional team of computer vision and electrical engineering specialists
- Collaborate with program management to create accurate software project schedules
- Mentor other engineers, provide architectural guidance, evaluate new technologies, and define and lead implementation of best practices
- Drive best practices for establishing requirements from user feedback and identify gaps/improvement opportunities within the risk management process
Who You Will Report To: - Director, Software Engineering
Requirements: - Bachelor's degree in Computer Science, Engineering, Math or a STEM discipline and a minimum 3-5 years' experience. Alternatively, minimum of 6 years professional experience developing
software for products released to and used by customers
- Advanced experience with C++ software development (3-5 years)
- Deep understanding of software engineering principles such as object-oriented analysis and design, data structures, algorithms and software architecture
- Strong experience with unit testing, module and integration testing
- Extensive hands-on experience with the design verification process in medical device development
- Expert-level knowledge of black- and white-box testing methods
- Experience with risk management processes and thorough understanding of FMEA
- Experience developing and implementing automated tests for software quality assurance purposes
- Strong experience with Python
- Experience working in a Linux based environment, specifically in a command line environment
- Ability to identify, analyze and document complex problems through effective use of technical and interpersonal communication skills, and to take responsibility for and drive actions necessary to resolve issues
- Ability to handle conflicting priorities through interpersonal, team, leadership, and negotiation skills
- Excellent documentation skills paired with willingness to actively employ these skills
- Excellent communication skills and ability to work independently and effectively within a team environment
- Must be able to lift 10 pounds, sit for up to 8 hours/day, operate a vehicle, work with hazardous materials, wearing protective equipment, etc.
- Compliance with relevant county, state, and Federal rules regarding vaccinations.
Preferred Qualifications - Advanced knowledge of common Libraries and Frameworks (STL, Boost, Qt)
- Proficiency with common build systems (Make, CMake, or similar)
- Familiarity with cross-compilation best development practices
- Understanding of the Linux operating system's boot and startup processes
- Experience with software version control systems, such as git and familiarity with best practices in a collaborative software development environment
- Knowledge of CI/CD tools and practices, including automated testing and deployment
What Will Make You Stand Out: - Experience with image processing and machine learning algorithms
- Knowledge of CUDA and GPU programming
- Software Development for NVidia Jetson embedded systems
- Experience with calibration and testing for computer vision imaging pipelines
- Experience in model-based testing
- Familiarity developing software in a medical device regulated environment
- Strong understanding of applicable regulatory standards, e.g., IEC-62304, ISO-13485 and ISO-14971
What We Offer: At Calyxo, you will be part of a knowledgeable, high-achieving, experienced and fun team. You will work in a diverse work environment with experienced, proven leaders and have an opportunity to shape our company culture. You will experience constant learning and dynamic challenges to help you grow and be the best version of yourself.
We also offer an attractive compensation package, which includes:
- A competitive base salary of $145,000 - $158,000 and variable incentive plan
- Stock options - ownership and a stake in growing a mission-driven company
- Employee benefits package that includes 401(k), healthcare insurance and paid vacation