This position is ideal for experienced Sr. Software Engineers (C++) to join our team in developing and improving algorithms for automated treatment planning software for our Invisalign products. As a Sr. Software Engineer, you will participate in end-to-end software development, solving open-ended problems and implementing complex algorithms in high-quality modern C++ code in a regulated environment.
Key Responsibilities
- Work in an agile team of developers and SQAs and collaborate with other development teams.
- Interact closely with clinical experts, project managers, and product owners, to understand problems, analyse specifications, formalize functional requirements, and prepare and deliver technical presentations and demos.
- Research and develop new features and create prototypes and proofs of concept.
- Participate in architectural design and project planning, design and sizing, and code and design reviews.
- Investigate and implement bug fixes and identify opportunities for code refactoring and reliability and performance improvements.
- Write high-quality idiomatic C++17 code with full test coverage.
- Write technical documentation for newly implemented functionality.
- Follow architectural, quality, and regulatory guidelines for medical device software development, demonstrate technical leadership, assist and mentor other developers, and uphold high standards of trust, responsibility, and professionalism.
- Identify/mitigate risks and participate in production monitoring and support as needed.
- Interact closely with clinical experts, project managers, and product owners, to understand problems, analyse specifications, formalize functional requirements, and prepare and deliver technical presentations and demos.
- Research and develop new features and create prototypes and proofs of concept.
- Participate in architectural design and project planning, design and sizing, and code and design reviews.
- Investigate and implement bug fixes and identify opportunities for code refactoring and reliability and performance improvements.
- Write high-quality idiomatic C++17 code with full test coverage.
- Write technical documentation for newly implemented functionality.
- Follow architectural, quality, and regulatory guidelines for medical device software development, demonstrate technical leadership, assist and mentor other developers, and uphold high standards of trust, responsibility, and professionalism.
- Identify/mitigate risks and participate in production monitoring and support as needed.
Skills, Knowledge & Expertise
- Education: Bachelor’s or Master’s degree in Computer Science, Applied Mathematics, or related field.
- Experience:
o 8+ years of professional experience in similar positions, developing enterprise / commercial software, preferably in agile SDLC;
o 5+ years of practical experience and excellent knowledge of modern C++ development (C++17 and above)
- Skills:
o Solid foundation in mathematics, especially linear algebra and geometry
o Strong proficiency in C++ (17 or newer) and STL
o Knowledge of Python.
o Working knowledge and experience with MS Visual studio, git, and a unit testing framework.
- Highly motivated, creative, self-starter, with excellent organizational, communication and interpersonal skills and a “can do” attitude.
- Ability to work on open-ended research problems.
Complementary skills
- Mathematical background, and knowledge of optimization methods, linear algebra, analytical geometry, and/or 3D graphics on a university level.
- Experience working in highly regulated industries (such as Banking, Financial, Healthcare, Medical Devices, Aerospace, etc.)
- Experience in CI/CD pipelines and knowledge of tools, methodologies, and frameworks for automatic software testing and monitoring.
- Experience in Linux, cross-platform, and cloud-based (AWS) software development
- Experience:
o 8+ years of professional experience in similar positions, developing enterprise / commercial software, preferably in agile SDLC;
o 5+ years of practical experience and excellent knowledge of modern C++ development (C++17 and above)
- Skills:
o Solid foundation in mathematics, especially linear algebra and geometry
o Strong proficiency in C++ (17 or newer) and STL
o Knowledge of Python.
o Working knowledge and experience with MS Visual studio, git, and a unit testing framework.
- Highly motivated, creative, self-starter, with excellent organizational, communication and interpersonal skills and a “can do” attitude.
- Ability to work on open-ended research problems.
Complementary skills
- Mathematical background, and knowledge of optimization methods, linear algebra, analytical geometry, and/or 3D graphics on a university level.
- Experience working in highly regulated industries (such as Banking, Financial, Healthcare, Medical Devices, Aerospace, etc.)
- Experience in CI/CD pipelines and knowledge of tools, methodologies, and frameworks for automatic software testing and monitoring.
- Experience in Linux, cross-platform, and cloud-based (AWS) software development