Science Software Engineer

Are you passionate about building tools for open science? Do you want to promote reproducible and synthetic research on the earth and the environment? Do you love to collaborate at the intersection of science and engineering?

Job Description
We seek talented Science Software Engineers to join our open science development team to create a software infrastructure enabling ecological and environmental synthesis at global scales. Projects focus on federated approaches to share and manage scientific data, analysis code, and other products to enable open, reproducible science and facilitate synthetic research. Projects will include building software for data analysis and integration in systems like R and Matlab that incorporate modern approaches to semantics and provenance modeling. Current and past projects have built systems including the KNB Data Repository, the DataONE federation of repositories, the Arctic Data Center, and Ecological Metadata Language, among many others. Upcoming projects will focus on automating metadata quality evaluation, building systems to support and promote open data citation, and designing and improving data discovery and metadata and data submission systems for data repositories.

Principal duties include: systems analysis, design, and development for server, web, and desktop scientific data management and analysis applications; web design and development; creation of end-user documentation and training materials; community outreach and training. Research projects are conducted at the National Center for Ecological Analysis and Synthesis (NCEAS; http://www.nceas.ucsb.edu/ecoinformatics/) at UC Santa Barbara.

Minimum Requirements
We're most interested in individuals with creativity and enthusiasm to advance open science, including all aspects of open data, open software, and open access publishing in support of the earth and environmental sciences. The position requires expertise in software design and development using modern programming languages (e.g., Javascript, Python, Java, C) for desktop and web application design and development (e.g., HTML, Javascript, JSON, XML, CSS, XSLT, node.js, and modern Javascript libraries). It also requires expertise in design and development using relational database systems and experience with cross platform application development for server (e.g., Linux) and desktop operating systems (e.g., Windows, Mac OS X). The position requires a thorough understanding of network, Internet, and web programming, and expertise with using software development systems, including build systems (e.g., maven, make, Travis, Coveralls), source code control systems (e.g., git), and issue tracking systems. It requires excellent communication skills, including the ability to write end-user documentation about highly technical systems in a manner understandable and compelling to ecological and environmental scientists. A Bachelor's degree required, preferably in computer science or an ecology/earth/environmental science field.

Desirable Requirements
Experience in or exposure to ecological and environmental science research is desirable, as is background and understanding of statistical analysis and modeling (e.g., in R, Matlab), and approaches to manipulating geospatial data. Experience with software application development for science, including familiarity with statistical, modeling, and geospatial data programming tools and techniques is desirable. In addition, understanding of and experience with technologies for provenance tracking (W3C PROV), the semantic web (e.g., RDF, OWL) and the Linked Open Data web are highly desirable.

Salary Hiring Range
Salary will be commensurate with experience.

Special Conditions of Employment
Position is part of grant-funded research, and so continuation beyond 1.5 years depends on future funding availability.

How To Apply
Submit a cover letter explaining your interest in the position, your CV or resumé detailing your experience and qualifications, and contact information for 3 non-peer references along with the UCSB job application via the UCSB Human Resources web site. Search for job #20170248. Open until filled.