ProSomnus Sleep Technologies is seeking a versatile Software Engineer to develop and maintain software for connected medical devices and supporting applications.
This hands-on role spans mobile applications, embedded sensor technology, and cloud-based services. The engineer will contribute to product features, software enhancements, and reliability improvements while helping advance automated testing, build infrastructure, and release processes.
We are looking for someone who enjoys solving technical challenges, working across technologies, and improving how software is developed, tested, and delivered within a small, collaborative engineering team.
Essential Duties and Responsibilities
Software & Product Development
- Design, develop, test, and maintain software features for connected medical devices and associated applications.
- Contribute to iOS and Android mobile applications, including BLE connectivity, data synchronization, and user-facing functionality.
- Support embedded sensor firmware, device integration, backend services, and web applications as project needs require.
- Investigate and resolve software defects, performance issues, and field-reported problems.
- Improve existing software through refactoring, dependency updates, and reliability enhancements.
- Participate in the development of new product capabilities and future device technologies.
Test Automation & Software Quality
- Develop automated testing tools and frameworks for mobile applications, embedded devices, APIs, and backend services.
- Contribute to sensor and firmware test automation, including BLE protocol verification, data acquisition, and regression testing.
- Develop and maintain unit, integration, and automated regression tests using tools such as Flutter Test, pytest, Appium, or similar frameworks.
- Collaborate with engineers to improve test coverage, testing practices, and software quality.
- Support software verification and validation activities in accordance with established medical device development procedures.
Build Infrastructure & Release Engineering
- Develop and improve automated build, continuous integration, and release workflows using tools such as GitHub Actions, or similar platforms.
- Help establish centralized, reproducible build environments, scheduled builds, and automated verification processes.
- Improve software packaging, dependency management, and release reliability.
- Develop engineering tools and scripts to reduce manual processes, including device testing and manufacturing automation.
Collaboration & Continuous Improvement
- Collaborate with software, firmware, hardware, quality, and regulatory teams throughout the product development lifecycle.
- Participate in technical design discussions, code reviews, and release activities.
- Identify opportunities to improve software architecture, engineering tools, and development practices.
- Prepare and maintain technical documentation, software specifications, and test records as required.
Basic Qualifications
- Bachelor's degree in Computer Science, Computer Engineering, Electrical Engineering, or a related field, or equivalent practical experience.
- 3+ years of professional software development experience preferred.
- Proficiency in one or more programming languages such as Dart, Python, C/C++, Go, JavaScript, or TypeScript.
- Experience designing, developing, testing, and maintaining software applications or embedded systems.
- Familiarity with software development practices, including version control, code reviews, and automated testing.
- Strong problem-solving and communication skills, with the ability to work independently and collaborate across technical disciplines.
Preferred Qualifications
- Experience with Flutter/Dart for iOS and Android application development.
- Experience with Bluetooth Low Energy (BLE), embedded systems, or firmware development.
- Experience developing automated test frameworks or device test tools using Python, pytest, Flutter Test, Appium, or similar technologies.
- Experience with CI/CD, automated mobile builds, and release infrastructure using GitHub Actions, Codemagic, Jenkins, or similar platforms.
- Familiarity with backend and cloud technologies such as Go, Vue.js, REST APIs, SQL databases, or AWS.
- Experience with manufacturing automation or software development for medical devices and other regulated products.