Job DescriptionJob DescriptionDescription:
RxSight is an ophthalmic medical technology corporation headquartered in Aliso Viejo, California that has commercialized the worlds first and only adjustable intraocular lens (IOL) that is customized after cataract surgery. The companys mission is to revolutionize the premium cataract surgery experience by allowing surgeons to partner with their patients to achieve optimized results for every unique eye.
OVERVIEW:
Reports to the Senior Manager, Software Engineering and responsible for contributing to the design, development and testing of the software for RxSight products. The Principal Engineer assumes the role of the subject matter expert for Operating Systems, drivers, Board Support Packages (BSP), embedded software applications including control systems, and integration of various subsystems such as user interface. The engineer will actively collaborate with other teams, departments, and consultants as necessary to fulfill the software development and testing needs of the company.
Requirements:
ESSENTIAL DUTIES AND RESPONSIBILITIES:
Support all development and modification of RxSight software, from requirements to production and commercial deployment with software functionality including GUI, controlling software, algorithms, drivers, and integration with subsystems.
Participates in all phases of the software development life cycle including concept, requirements, design, implementation, testing, and maintenance.
Develop documentation that are compliant with standards and regulations
Plans, leads, and executes efforts to architect, design, develop, maintain, upgrade, port, and verify/qualify Hardware Abstraction Layer (HAL) code, Board Support Package (BSP) code, Over the Air (OTA) update code and methods (including implementation of encryption and cybersecurity schemes), and embedded product software and/or product support software to enhance, implement and support LDD functionality.
Knowledge and understanding of OOD and OOP methodology, full SDLC processes and software unit testing
Ensures regulatory compliance of the development process and the commercialized product.
Develop software test tools to support RxSight products
Collaborate with other functions including but limited to Engineering, Quality, Customer Support (Clinical and Technical Services).
Acts as a technical leader to mentor and grow the software engineering team
REQUIRED KNOWLEDGE, SKILLS AND ABILITIES:
Expertise in embedded, real-time applications
Capable of software design and coding with a focus on testability, robustness, and performance, or a demonstration of the ability to quickly learn any missing elements.
Proficiency in developing the software on multiple platforms (embedded and desktop) using C# and C++ and other programming
Working knowledge of and experience with ARM Processors, 8051 Microcontrollers as well as other embedded architectures and interfaces including SPI, I2C
Capable configuring Operating Systems, developing device drivers, and creating Board Support Packages
Proficient in the software development lifecycle, design controls, and unit test
Experience with USB, or serial protocols, Bluetooth, is a plus
SUPERVISORY RESPONSIBILITIES:
N/A
EDUCATION, EXPERIENCE, and TRAINING:
Bachelors or Masters degree in a technical field and more than 6 years related experience and/or training; or equivalent combination of education and experience, including
HAL/BSP development for embedded ARM processors
Real-time embedded software development and/or testing
Experience integrating or testing software on bare metal and with various real-time operating systems such as FreeRTOS and Linux/Unix derivatives
Developing and troubleshooting communications, device drivers, and I/O interfaces (including displays and camera interfaces)
Experience in requirements analysis, software design, implementation (code and unit test) and authoring of formal deliverable documentation
Experience developing and deploying OS and firmware updates and software under the Qt development environment
Use of hardware diagnostic tools such as oscilloscopes, DMMs, packet sniffers, etc. to aid with troubleshooting and refining software
Training to be completed per the training plan for this position as maintained in the document control system.
Training to be completed per the training plan for this position as maintained in the document control system
The training requirements on TRN-10007 Insider Trading Policy, TRN-10008 Global Anti-Bribery and Anti-Corruption Policy and TRN-10009 Code of Business Conducts and Ethics must be diligently completed within 30 days from the hiring date and on an annual basis
CERTIFICATES, LICENSES, REGISTRATIONS:
N/A
COMPUTER SKILLS:
FreeRTOS
Embedded Linux/Unix, Yocto
Boot to Qt applications development for Nvidia JetsonTx2 and QML
MFC or C# .Net framework application development
Object-oriented software architecture, software design, C/C++/C#/Python
Notice to Staffing Agencies and Search Firms:
RxSight does not accept unsolicited resumes or candidate submissions from staffing agencies or search firms for any employment opportunities. All agency engagements must be authorized in writing for a specific position by RxSights Talent Acquisition department. Any resumes or candidate information submitted without such specific engagement will be considered unsolicited and the property of RxSight. No fees will be paid in the event a candidate is hired under these circumstances.
#J-18808-Ljbffr
See details and apply
Principal Software Engineer