Apply Now Clicking "Apply Now" opens the link in a new window.

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.

Research Applications & Advanced Computing

The HITS Research Applications & Advanced Computing (RAAC) division serves the Michigan Medicine research community by engaging with faculty in areas that span from the basic sciences through clinical translational research. RAAC is composed of a Research Engagement team, which  works closely with lab researchers to provide a broad range of IT resources; a Research Integration team, which partners with informaticians and data science experts to help them access Michigan Medicine’s abundant data resources; and a Research Program team, which helps researchers leverage the strength of our enterprise research platforms— including MiChart, OnCore, and LabVantage.

Job Summary

The Research Programming and Innovation team in RAAC seeks a Research Programmer Lead and Senior that specializes in a wide range of scripting and coding languages to aid in data analysis, experimental control, instrument automation, custom research application development and parallel programming and workflow optimization on compute resources (workstations, servers, clusters, cloud) for researchers. The incumbents in these positions, will assist researchers in identifying appropriate platforms, software and developing proof of concept code. Provide assistance with refactoring and optimization of code. Promote sustainable development workflows and best practices around programming. Provide researchers references to training and coding resources. Assist researchers in identifying new solutions or development pipelines to aid in edge research endeavours. This position will work closely with the Research Technical Services Director for the RAAC division, Sr. Michigan Medicine Leadership, and faculty to define an overall research programming strategy that meets the requirements of our complex research environment and overall IT strategy for Michigan Medicine.

Mission Statement

Michigan Medicine improves the health of patients, populations and communities through excellence in education, patient care, community service, research and technology development, and through leadership activities in Michigan, nationally and internationally.  Our mission is guided by our Strategic Principles and has three critical components; patient care, education and research that together enhance our contribution to society.

Required Qualifications*

Required Qualifications for Lead Position:

  • Bachelor of Science degree in Engineering or Computer Science or equivalent required. 
  • Seven or more years of experience in Software Development.
  • Five or more years of experience in the development of web-based or client-side applications.
  • Demonstrated leadership qualities needed to oversee a small team of technical staff.
  • Demonstrated ability to establish and ensure adherence to technical standards.
  • Ensure that any custom and\or customized packaged applications in the portfolio are maintained through incidents and approved enhancement cycles.

Also meet the required qualifications of the Senior Level.

Required Qualifications for Senior Position:

  • Bachelor of Science degree in Engineering or Computer Science or equivalent required. 
  • Five or more years of experience in Software Development.
  • Three or more years of experience in the development of web-based or client-side applications.
  • Knowledge of the Java programming language. 
  • Experience with front-end web development using tools like HTML, CSS, Ajax, JavaScript, REACT and AngularJS.
  • Experience with version control systems such as subversion or GIT.
  • Willing and able to learn new technologies, trends and methodologies.
  • Demonstrated experience partnering with other technical teams, while ensuring that the quality of programming code on the team is excellent, well-designed, efficiently written, easily supportable, and extensible when possible.
  • Experience with Integrated Development Environments like IntelliJ, Eclipse or PyCharm.
  • Adherence to technical standards.
  • Maintain custom and\or customize packaged applications in the portfolio through incidents and approved enhancement cycles.
  • Excellent interpersonal and communication skills, both written and verbal.
  • Demonstrated experience in working well in a collaborative team environment where individuals support each other toward a common goal. 

Required Qualifications for Intermediate Position: 

  • Bachelor of Science degree in Engineering or Computer Science or equivalent required.
  • 3-5 years of experience in Software Development.
  • 2-3 years of experience in the development of web-based or client-side applications.
  • Knowledge of the Java programming language.
  • Experience with frameworks such as Spring or JEE.
  • Experience with front-end web development using tools like HTML, CSS, Ajax, JavaScript, REACT and AngularJS
  • Experience with version control systems such as subversion or GIT.
  • Willing and able to learn new technologies, trends and methodologies.
  • Excellent interpersonal and communication skills.
  • Clear written and verbal skills

Desired Qualifications*

  • Experience in programming components for research experiments using the Arduino or similar platform.
  • Familiarity with electronics systems (e.g., digital acquisition boards) for the programming and interfacing of specialized scientific hardware and software.  
  • Experience with C/C++, R, Python web frameworks and scripting.
  • Experience with frameworks such as Spring or JEE.
  • Experience with database design and strong SQL skills.
  • Experience with intake and integration of a variety of data formats like JSON and XML.
  • Demonstrated experience with test driven development using a framework such as JUnit or Mockito. 
  • Experience with agile development techniques, including story writing and paired programming.
  • Demonstrated experience with continuous integration and deployment tools such as Maven and Jenkins.
  • Experience with programming with statistical packages like R or SAS.
  • Experience with Red Hat or SUSE enterprise.
  • Experience working with sensitive or protected health information.
  • Possessing a background in, or experience supporting, life sciences research.
  • Experience with HL7 and FHIR.

Underfill Statement

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

Background Screening

Michigan Medicine conducts background screening and pre-employment drug testing on job candidates upon acceptance of a contingent job offer and may use a third party administrator to conduct background screenings.  Background screenings are performed in compliance with the Fair Credit Report Act. Pre-employment drug testing applies to all selected candidates, including new or additional faculty and staff appointments, as well as transfers from other U-M campuses.

Application Deadline

Job openings are posted for a minimum of seven calendar days.  This job 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.