A new computational biology research group in the Center for Public Heath Genomics at the University of Virginia led by Nathan Sheffield is recruiting a programmer with skills in Python and/or R.

About the lab

The group (http://www.databio.org) occupies wet and dry lab space in the Center for Public Health Genomics at UVA. We are an interdisciplinary and highly collaborative group, and therefore we are also affiliated with with several other entities at UVA, including the Department of Biomedical Engineering in the School of Engineering, and Departments of Biochemistry and Molecular Genetics and Public Health Sciences in the School of Medicine, as well as the Data Science Institute, the Cancer Center, and the Child Health Research Center.

Our research is at the interface of computation and biology, drawing on techniques in computer science, data science, bioinformatics, and machine learning, and applying them to biological questions in cancer, epigenetics, single-cell analysis, development, and genomics. We collect both novel data and public data and make use of UVA’s high-performance cluster for computational approaches to biological questions.

Our biological questions are focused on understanding gene regulation and epigenetics in cancer and development. How does DNA encode regulatory networks that enable cellular differentiation? We rely on experimental data from sequencing-based epigenome experiments like ATAC-seq, bisulfite-seq, and ChIP-seq, and we use these data to study pediatric cancer, neuroimmunology, and other models to explore fundamental principles of regulatory DNA.

Teamwork is our foundation. We are trying to build a team of intelligent, creative people who are interested in working together to accomplish great things. We collaborate with other research groups extensively. We emphasize social coding, using GitHub to share code both within the group and so others can benefit from our work. Writing readable, reusable code pays off as we accumulate useful code and re-apply it to new biological systems. We challenge the norm in academic computational research of individual scientists writing isolated code, and instead push open, multi-author code development.

If these topics excite you, please read more about our research interests, recent publications, and philosophy of open data.

About the university

The University of Virginia, founded by Thomas Jefferson in 1819, is the only collegiate UNESCO World Heritage site in the US. It located near Shenandoah National Park in the beautiful foothills of the Appalachian Mountains in Charlottesville, Virginia. UVA routinely ranks in the top 3 public universities in the United States, with a co-located School of Medicine and a top-tier environment for research. Charlottesville is also a great place to live. If you’re unfamiliar with area, please read the many reasons you should consider coming to UVA.

Job description

The scientific programmer will have two primary responsibilities:

  1. Contributing to high quality bioinformatics software. The programmer will be responsible for improving methods developed within our group, such as generalizing them to build robust software that is useful beyond the initial project. This will include code review and will potentially include building web-accessible user interfaces to increase outside access.

  2. Processing large biological data sets through computational pipelines. This will require curating raw input data, documenting data in biological projects, configuring software, and using local supercomputing resources (SLURM) to process the data. This will include monitoring and improving pipeline performance and developing reports to describe data quality and summarize results. The programmer will curate hundreds of terabytes of raw and processed disk space and work with professional systems administrators.

Interested in joining?

I’m recruiting a team-oriented scientific programmer with coding experience. Applicants should be familiar with or interested in some of the skills listed on my page of skills and training materials. For this position, you should have some interest in either building bioinformatics applications or analyzing large biomedical datasets.


  • Computational experience with scripting in R or Python is required.
  • Skill with C++, object-oriented programming, and git is preferred but not required.
  • Knowledge of biology would be a plus, but not required – however, you must be willing to work with biological data and communicate with biologists.
  • Most important is a willingness to contribute to team projects (such as building communal software) and demonstrated commitment to sharing software and data with the community.
  • Candidates at all levels are acceptable; your experience level (undergraduate, bachelors degree, or masters degree) is less important than your coding skills, work ethic, and interest in working with a team.

Include with your application:

  • Your education and publication history, if any
  • Your career goals, and what you think you would gain from experience in our group
  • Why you think you would fit well, and what you would contribute
  • Your biggest ideas for what projects or types of projects you find exciting
  • A link to GitHub or other public repository with code you showcase, if any

The University of Virginia is an equal opportunity and affirmative action employer. Applications will be reviewed on a rolling basis and the position will remain open until filled.

This position is posted at http://databio.org/scientific_programmer.html and is active as of October 2016.

Informal inquiries and application materials can be directed to the attention of Dr. Nathan Sheffield at . But ultimately, official applications must be submitted at the official UVA application system (posting number 0619750).