As part of the Executive team, the Director of Software Engineering is responsible for coordinating the design, development, and implementation of an organization's applications software products. Other responsibilities include reviewing project timelines, supervising cost, and ensuring the project stays within specified guidelines.
Responsibilities of this Role:
- Direct/Manage/Supervise the software development team (remote and/or in-house), which includes mobile developers (iOS/Android), web backend developers, test engineers, and firmware developers (team may be employees or contractors).
- Technical review of software pull requests.
- Implement internal software development projects to support data analysis, R&D, quality assurance, business development & company metrics, regression testing, device farm testing, unit testing, clinical collaborations, and manufacturing tests.
- Align Software department goals to organizational goals.
- Take ownership of product management, actively engages with leadership to define the strategic placement of product and feature set, and drives product deliverables to meet this vision
- Collaborate with other departments to prioritize software development needs including design, development, and documenting and testing new and existing software.
- Develop and implement business plans, policies, and procedures.
- Evaluate results within the business to determine if organizational objectives and timelines are being met.
- Analyze and resolve software development issues and needs in terms of the software's full life cycle.
- Estimate FTE contributions and timelines when scoping work on projects to set both project schedules and budgets.
- Bring connections to qualified contractors in web, mobile, back end, UI/UX, design, and firmware/embedded software.
- Work with other directors, particularly Hardware Engineering, Assay Development, and Quality to accomplish cross-disciplinary tasks.
- Consult with software regulatory and cybersecurity consultants.
- Work with Quality to establish and oversee software quality documentation.
- Manage software build and deployment
- Conduct software risk analyses (including patient risk and cybersecurity) as part of risk assessment for quality system and regulatory purposes.
- Proven experience in at least one of the following languages (Swift, Python, C, and / or Kotlin)
Please note this job description is designed to cover a majority (but not all) of the activities, duties, or responsibilities that are required of the employee for this job. Duties, responsibilities and activities may change at any time with or without advance notice.
Required Skills and Qualifications:
- Minimum 5 years’ work experience in start up environment.
- 2-3 years’ experience managing a team (ideally a combination of remote / in house)
- Experienced at project management for mobile app development, delivery, and maintenance on both iOS and Android
- Experience shipping/maintaining apps/software at large scale preferred
- Needs to be technically literate to assist with troubleshooting and sanity checks. Should be adept at recognizing technical gaps within a project
- Experience with web back-end development for integration of databases with external services using APIs and integrations
- Cybersecurity certification preferred
- Medical device software experience preferred
- Bluetooth peripheral experience preferred
- Experience working within a quality management system and with applicable standards preferred (e.g., ISO 13485, IEC 62304)
- Strong communication skills (ability to translate technical information effectively to business Stakeholders, etc.)
- Proven creative problem-solving approach and strong analytical skills
This position does have supervisory responsibilities.
This job works Hybrid (remotely / HQ)