Staff Software Engineer

Foresight Diagnostics
Summary
Join Foresight Diagnostics, a venture-backed molecular diagnostics company, as a Staff Software Engineer. You will develop robust and scalable software solutions for products and services crucial to the company's mission of non-invasive cancer detection. This role involves designing, implementing, and maintaining software throughout the product lifecycle, from research and assay development to high-throughput clinical and commercial testing. The ideal candidate possesses a strong software development and data management background, with preferred experience in NGS laboratory workflows and data management. The position offers flexibility for fully onsite, hybrid, or remote work (with quarterly travel to Boulder, CO for remote employees). You will collaborate with a team, contribute to software validation and documentation, and mentor junior engineers. This is a full-time position reporting to a Lead Software Engineer.
Requirements
- Bachelorโs or Masterโs degree in Computer Science, Software Engineering, Bioinformatics, or a related field
- 8+ years of relevant experience in scientific or research-based organizations
- Proficiency in Java and other programming languages (e.g., C++, Python, Rust, Go)
- Experience with containerization technologies (e.g., Docker, Kubernetes)
- Strong background in cloud computing platforms (e.g., AWS, Google Cloud), including experience with scalable and distributed systems
- Solid understanding of operating systems, networking, distributed systems, databases, and storage architectures
- Deep understanding of how code runs on underlying hardware, including operating systems, algorithms, and data structures. Ability to optimize or troubleshoot code by understanding its execution and the impact on system resources
- Experience handling production incidents, including root cause analysis, mitigation, and working through complex system failures
- Demonstrated experience in developing software in regulated environments, with knowledge of relevant standards and quality systems
- Exceptional problem-solving skills and the ability to balance strategic vision with hands-on technical execution
- Excellent communication, with an ability to explain technical concepts to both engineering and business stakeholders
- Leadership skills, with experience mentoring and guiding software engineers in a highly collaborative and team-oriented environment
- Adaptable to fast-paced, dynamic work environments
Responsibilities
- Contextualize and translate stakeholder requirements into robust, scalable, and compliant software implementations, ensuring solutions are purpose-built for scientific and commercial applications
- Participate in group reviews of architectural design and support an environment that fosters fun and healthy debate
- Leverage cloud computing platforms (e.g., AWS, GCP) to design scalable and efficient solutions for data storage and analysis
- Ensure software meets the highest standards of robustness, performance, and compliance, adhering to regulatory requirements (e.g., ISO 13485, IEC 62304)
- Follow software engineering best practices, including automated testing, CI/CD, and change management protocols
- Write, debug, and maintain code in compliance with established coding standards defined by the Systems Engineering team and leadership
- Contribute to the validation, documentation, and testing processes, ensuring alignment with internal quality systems and external regulatory standards
- Develop and maintain software documentation in accordance with continuous improvement practices and regulatory requirements, to include validation and verification plans, protocols, and reports
- May represent software during the regulated product design control and design review process through development, review, and approval of the applicable deliverables
- Monitoring the performance and availability of software systems, identifying and resolving issues, and implementing proactive measures to prevent future incidents
- Developing and maintaining automation tools and infrastructure to streamline software deployment, configuration management, and system monitoring
- Responding to incidents, conducting root cause analysis, and implementing corrective actions to prevent similar incidents in the future
- Collaborating with software development teams to ensure that reliability and scalability considerations are incorporated into the software design and implementation
- Identifying opportunities for process improvement, implementing best practices, and driving initiatives to enhance the reliability and performance of software systems
- Mentor and provide technical guidance to software engineers, fostering a culture of collaboration and innovation and build an environment that welcomes feedback focused on continuous improvement
Preferred Qualifications
- Strong interest and experience in developing software specifically for scientific applications, with a demonstrated ability to bridge computational and biological disciplines
- Familiarity with bioinformatics tools and computational biology workflows
- Familiarity with software validation practices, quality systems, and compliance requirements (e.g., ISO 13485, ISO 27001, ISO/IEC 12207, IEC 62304)
Benefits
- Paid vacation
- Sick time
- Parental leave
- Medical
- Dental
- Vision
- Life
- Disability coverage
- Flexible spending accounts
- 401k with company match
- Bonus and equity offerings
- Professional development