Research App Programmer/Analyst

Apply Now

How to Apply

A cover letter is required for consideration for this position and should be attached as the first page of your resume. The cover letter should address your specific interest in the position and outline skills and experience that directly relate to this position.


The Research Applications Programmer/Analyst will support a highly-interactive research team in the Center for Statistical Genetics (CSG) at the University of Michigan School of Public Health. We are involved in cutting edge genetics research, studying genetic variation in humans, with a focus on understanding how genetic variation contributes to the risk of complex disorders and on generating shared resources and tools that help power these studies around the world. This is an opportunity to work in a challenging and rewarding research area that always poses new technical and computational problems.

We are analyzing the largest genetic datasets in the world, totaling petabytes of data and often requiring the deployment of 10,000s of cores in each analysis. You will focus on automating and streamlining processes for genomic data processing at scale and implementing processes in secure cloud environments.

We are seeking an experienced and dynamic staff member with a commitment to contributing to a diverse, equitable and inclusive environment for all members of our community.


The Senior Research Applications Programmer/Analyst will be able to conduct the following activities, independently, with minimum guidance and oversight:

  • Design, develop, and deploy pipelines that enable reproducible and scalable processing of large genetic datasets in cloud environments. (35%)
  • Work with scientific staff, application developers, and end-users to connect high-quality analysis processes and user interfaces to scalable compute resources and infrastructure. (35%)
  • Package pipelines as reproducible workflows for scientific computing using cloud infrastructure. (15%)
  • Help design local and remote compute systems to balance cost, performance, and user needs. (5%)
  • Automate processes for securing systems and data, for allocating limited resources, and for monitoring and collecting use metrics. (10%)

Required Qualifications*

  • Bachelor's degree in Computer Science, Computer Engineering, Bioinformatics or an equivalent combination of education and experience.
  • Relevant experience in a related role displaying strong personal initiative, a drive for continuous improvement, demonstrated end-to-end responsibility for mission-critical services and excellent problem-solving skills (Senior level: 5-7 years related experience, Intermediate level: 3-5 years related experience).
  • Strong communications skills with the ability to convey technical concepts effectively such that various audiences receiving the communication can understand.
  • Extensive experience with Linux and with at least one major cloud provider (GCE, AWS, or Azure).
  • Experience with writing and documenting high-quality code using version control systems such as Git. Experience with continuous integration tools (GitHub Actions, Jenkins, Travis Cl, etc). 

Desired Qualifications*

  • Bioinformatics or similar domain experience.
  • Experience processing and managing large datasets, particularly those generated by genomics and next-generation sequencing technologies.
  • Familiarity with community standard or domain-specific workflow specifications such as Temporal, Common Workflow Language (CWL), Workflow Definition Language (WDL), Snakemake, or Nextflow.
  • Experience with web service and application components including HTTP servers, proxies and SQL/NoSQL database servers (MySQL preferred).
  • Proficiency in the principles of computer programming and at least one high-level language such as Go, Python, Rust, or C/C++.
  • Familiarity with containerization systems such as Docker and Kubernetes.
  • Prior experience in a FISMA compliant environment would be a definite plus. 

Work Locations

This position may be eligible for remote and/or flexible work opportunities at the discretion of the hiring department.  Flexible work agreements are reviewed annually and are subject to change dependent on the business needs of the hiring department, throughout the course of employment.

Underfill Statement

This position may be underfilled at a lower classification depending on the qualifications of the selected candidate.

Salary range for the Senior level:  $87,324-$107,871

Salary range for the Intermediate level:  $66,538-$82,194

Additional Information

Michigan Public Health is seeking a dynamic staff member with a commitment to contributing to a diverse, equitable and inclusive environment for all members of our community.

Background Screening

The University of Michigan conducts background checks on all job candidates upon acceptance of a contingent offer and may use a third party administrator to conduct background checks.  Background checks are performed in compliance with the Fair Credit Reporting Act.

Application Deadline

Job openings are posted for a minimum of seven calendar days.  The review and selection process may begin as early as the eighth day after posting. This opening may be removed from posting boards and filled anytime after the minimum posting period has ended.

U-M EEO/AA Statement

The University of Michigan is an equal opportunity/affirmative action employer.