Software Engineer JAVA - GeneLab Data Systems
|Title:||Software Engineer JAVA - GeneLab Data Systems|
Work Location: NASA Ames Research Center (Mountain View, CA)
Minimum Citizenship: U.S. Citizen or Permanent Resident Status
Clearance: US Government
Join a highly motivated and visible GeneLab Data Systems (GLDS) software team, learn new skills and technologies, and contribute to the advancement of NASA's biological science initiatives.
The team is building a data system on top of GenomeSpace, an open sourced bioinformatics software platform, and integrating with either Galaxy or GenePattern tool repositories, to help space biology researchers gain access and utilize biologically-inspired spaceflight data as part of "Open Data, Open Science" initiative. The software platforms will provide capabilities to make these data sets available, citable, searchable, discoverable, interpretable, reusable, and reproducible.
The GeneLab project is both a science collaboration and a data system effort to give scientists access to data from experiments onboard the International Space Station (ISS) that explore the molecular response of terrestrial biology to spaceflight environments. It is a jointly funded by the International Space Station Research Integration Office (ISSRIO) at the Johnson Space Center (JSC) and the Human Exploration and Operation Mission Directorate's (HEOMD) Space Life and Physical Sciences Division (SLPSD). It provides a data system that is a collaborative workspace with tools to analyze and visualize space-relevant omics data. GeneLab's mission is to maximize the utilization of the valuable biological research resources aboard the ISS by collecting genomic, transcriptomic, proteomic, and metabolomics data known as "omics."
As the senior member of the GLDS QA/Test team, you will lead the software quality assurance activities for each release of software as follows:
- Develop test plans, test cases, and relevant documentation
- Develop unit test cases using automated or semi-automated testing mechanisms and Continuous Integration frameworks (e.g., JUnit, JSUnit, Selenium, Bamboo, Hudson, etc.)
- Perform black-box and white-box software testing
- Identify and help diagnose defects
- Record defects in the incident tracking system
- Develop and present defect reports to the project team
- Assist in developing User Acceptance Test (UAT) plans and user manuals/documentations for non-technical users
Education: Degree in Computer Science/Computer Engineering/Software Engineering/Electrical Engineering (BS/MS)
Required Skills and Experience
- 7+ years of experience with full-stack web application testing
- 5+ years of Java
- 3+ years of experience with test and continuous integration (CI) frameworks, such as JUnit, JSUnit, Selenium, Bamboo, Hudson.
- 3+ years of Python, Linux/Unix shell scripting
- 3+ years of practical experience with JSON, XML data exchange formats
- 3+ years of relational and NoSQL databases, such as MySql and MongoDB
- 2+ years of experience with Jira and SVN.
- Excellent written and oral communication skills
- Eagerness and ability to quickly learn new technologies and methodologies
- Detail-oriented, proactive, and capable of conducting both self-directed independent work, and participating in inter-disciplinary teams
Other Desired Skills
- Amazon Web Services (AWS) cloud infrastructure (e.g., EC2, S3 etc.)
- Virtual Machines (VM) and Docker Container technologies
QTS, Inc. is an Affirmative Action/Equal Opportunity Employer. All candidates are considered regardless of race, color, religion, age, gender, disability or military status.