What are the responsibilities and job description for the Embedded Software Developer position at OpenWater, Inc.?
About Openwater :
Openwater is at the forefront of developing cutting-edge open-source medical technologies aimed at diagnosing and treating potentially hundreds of diseases using a singular device. Our innovation holds the promise of addressing debilitating conditions like cancer, mental health disorders, strokes, COVID / Long COVID, and extending longevity treatments. We have a wealth of clinical data demonstrating the potential of our technology and are proud to be the world's first open-source, open-patent, open-clinical-data, and open-safety-sharing company, revolutionizing healthcare with the concept of the Silicon Hospital.
Role Overview :
As an Embedded Software Developer at Openwater, you'll join dynamic cross-functional teams to craft highly inventive solutions for our open-source medical device platforms. Your key responsibilities will include full-stack software engineering encompassing design, implementation, and verification. We seek proactive problem solvers and seasoned designers ready to tackle the challenges of a start-up environment.
Responsibilities :
- Contribute to or lead software development for diverse products, collaborating with teams from engineering, customer service, operations, marketing, and quality assurance.
- Support and enhance applications that manage medical device information and analyze collected data.
- Develop and maintain embedded software for STM32 microcontrollers operating on FreeRTOS.
- Optimize Python communication libraries (USB interfaces) to ensure effective interaction with embedded devices.
- Create, implement, and maintain user interfaces using Python QT5 for seamless product interaction.
- Debug, test, and troubleshoot software across embedded and Python environments.
- Work alongside hardware engineers for seamless integration of software and hardware components.
- Enhance system reliability, performance, and scalability across all software layers.
- Manage software release cycles and provide technical support for production-ready systems.
- Embrace new technologies to aid in the development of future applications.
- Adhere to company goals and objectives, policies, procedures, design controls, and international / FDA regulations.
- Craft clean, maintainable, and well-documented code following best practices.
- Engage in software quality assurance activities critical to the software development process.
- Document processes to support design history files (DHF's), product verification and validation software, production assembly instructions, and testing.
- Collaborate on other software initiatives within the company.
Qualifications :