Save Job
Posted 2w ago

Sr. Software Engineer

@ Align Technology
Yerevan, Yerevan, Armenia
OnsiteFull Time
Responsibilities:developing algorithms, designing architecture, fixing bugs
Requirements Summary:8+ years professional software experience, 5+ years modern C++ (C++17+) expertise, strong math background, Python and git knowledge, experience with Visual Studio, unit testing and regulated software development.
Technical Tools Mentioned:C++, C++17, STL, Python, Microsoft Visual Studio, git, Linux, AWS, CI/CD
Save
Mark Applied
Hide Job
Report & Hide
Job Description
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.

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