Job Description
Job Title: Biotech Software Engineer
Department: Research and Development
Reports to: Chief Scientific Officer, Head of R&D
Position Overview
Pierian Bioscience is a personalized medicine company that is developing innovative treatment directing diagnostic assays to guide physicians in improving treatment outcomes for cancer patients. This is a high impact role with an opportunity to make a significant difference in the treatment of cancer using state of the art single cell technologies.
In this role, you will make significant contributions to the design and development of state-of-the-art software programs and applications for laboratory and data analysis workflows. This position requires the individual to serve as a staff specialist on one or more experimental systems and is responsible for the entire life cycle of an application including analysis, coding, testing, and documentation. The Software Engineer will apply significant professional experience in IT and computer programming to the development and integration of the required laboratory software and is expected to initiate new software projects. The Software Engineer will be called upon to provide guidance and project direction to other staff members on the development team and will serve as a resource within the company on the functionality of their assigned system(s). Ultimately, the role of Biotech Software Engineer is to build high-quality, innovative and functional software that meets or exceeds industry standards in technical design and coding.
Under the direction of the Research & Development leadership the Biotech Software Engineer is responsible for:
- Design and development of complex laboratory/bioinformatics software programs and applications related to experimental workflows, data management and analysis
- Take ownership of existing software systems and related workflows
- Work closely with scientists and lab personnel to improve automation of lab and data workflows, define system functionality, and gather user requirements for new software features
- Apply and maintain existing software life cycle processes, propose and implement process improvements where appropriate
- Participate in scoping and planning new projects, periodically update management on project status and progress
- Leveraging external consulting resources as needed
Essential Job Functions
- Execute full software development life cycle (SDLC)
- Develop flowcharts, layouts and documentation to identify requirements and solutions
- Write well-designed, testable code
- Produce specifications and determine operational feasibility
- Integrate software components into a fully functional software system
- Develop software verification plans and quality assurance procedures
- Document and maintain software functionality
- Troubleshoot, debug and upgrade existing systems
- Work closely with other software engineers, research scientists, lab staff, and computational scientists to identify and implement software improvements, key automation and visualization tools
- Design, develop, integrate, and deploy related software programs and application components including front end development, server-side development, and system integration
- Provide software application support for testing, debugging and applying incremental improvements in working laboratory environments, both in research and regulated environments
- Provide training and troubleshooting for software systems and applications deployed to a diverse user base
- Comply with project plans and industry standards
- Ensure software is updated with the latest features
- Help evolve process methodologies including issue tracking, source control, unit testing and coding standards
- Make recommendations for process improvements and new technologies that will make a positive impact on the laboratory and analysis workflow
- Be the point person for various computational needs that arise on pre-clinical and clinical stage projects run by cross-functional teams consisting of research biologists, instrumentation experts, biostatisticians and clinical scientists
- Contribute to the development and practice of strong software engineering practices (e.g. version control, code reviews, testing, and documentation) at Pierian Biosciences
- Utilize structured programming techniques to deliver a high-quality product
- Lead evaluation and analysis of data related to application development in order improve performance of future versions
Application Programming and Software Development:
- Develop programming code and software modifications using appropriate languages and tools to provide responsive and innovative solutions, and new functionality in enterprise-wide and/or complex specialized systems
- Research, design, and develop prototypes and technologies to demonstrate utility, productivity enhancements, and cost savings
- Write documentation to provide user support for programs and for production/operating procedures
- Develop, maintain and support associated databases
System Analysis and Development:
- Analyze user system and application needs, determine and evaluate potential solutions, develop system specifications and requirements, and design application programs to meet the requirements
- Design integrated solutions which may include applications, databases, networks, and related systems
- Research, analyze, and evaluate current technical trends, emerging technologies and standards, new software functionality, and alternative software solutions to determine applicability and viability
Database Design and Development:
- Structure, implement, and maintain database systems.
- Establish policies, standards and procedures to ensure useful and readily accessible data
- Design database systems and programs
- Analyze data requirements, develop and document data dictionary, and develop data models
Education/Experience Requirements
- Bachelors or Masters degree in Computer Science or related fields
- Proven work experience as a Software Engineer or Software Developer
- 5+ years for programming experience in a commercial setting, ideally in life sciences industry
- Proficient programming in multiple languages including Python, Java, Javascript, Powershell, and other programming languages
- Proficient with software engineering tools
- Excellent knowledge of relational databases, SQL and ORM technologies (JPA2, Hibernate)
- Experience developing web applications using popular web frameworks such as React, Angular, Node.js, JFS, Wicket, GWT, and Spring MVC
- Experience with test-driven development
- Ability to document requirements and specifications
- Familiarity with software design life cycle, ideally in the life sciences industry
- Be willing to wear multiple hats, take hands on approach to addressing specific software systems, data management or other automation related issues
- Background in data science and statistical analysis using popular statistical packages such as R is a plus
- Proficiency in Microsoft Office tools
- Familiarity with Visual analytics tools like Tableau and Spotfire
Knowledge, Skills, and Abilities (KSAs)
- Must be a self-starter
- Very strong interpersonal skills and a track record of success in team-oriented environments
- Excellent verbal and written communication skills
- Ability to multi-task in a fast-paced, dynamic, small company environment with minimal direction and able to adjust workload based upon changing priorities.
- Ability to analyze complex problems
- Ability to work after hours as needed
NOTE: This job description is not intended to be all-inclusive. Employees may perform other related duties as requested to meet the ongoing needs of the organization. Pierian Biosciences is an Equal Opportunity Employer with a strong commitment to the achievement of excellence and diversity.
To apply please forward your CV and Cover Letter to GeneralAttendant@pierianbio.com, your subject line should read ‘Biotech Software Engineer Application – (Your Full Name)’