Research Software Engineer Intermediate
University of Michigan
Ann Arbor, MI
Job posting number: #7310642
Posted: June 18, 2025
Application Deadline: Open Until Filled
Job Description
Job SummaryThe University of Michigan's College of Literature, Science, and the Arts is seeking a software engineer to join a team of professionals dedicated to using their expertise in software engineering to advance research projects that address some of the moment's pressing societal challenges.
ABOUT THE JOB
We need your help! We are seeking a software engineer to join our team to design and develop applications for research projects at the College of Literature, Science, and the Arts. We are especially interested in folks with experience in mobile applications or Python.
Our team has a growing need to produce mobile applications that serve as interactive data collection platforms and often require a Python-based backend infrastructure for data management. We support research projects from across the College, so you'll see projects from a wide range of disciplines and methodologies- everything from history to physics, to art, to anthropology- there are lots of fun and unique opportunities.
ABOUT YOU
You might be a great fit for this position if you are comfortable working in collaborative multidisciplinary teams that include folks like researchers, students, other programmers, web designers, graphic artists, user experience designers, librarians, systems administrators, and more.
You might have a CS degree. You might not. That's not what we're looking for. We care about what you can do and how you do it, not about how you got here. A track record of conscientious, thoughtful work speaks volumes.
Everyone is unique, so depending on the candidate's qualifications, this position could be filled at either the intermediate or senior level. Details about how those levels differ are supplied below.
Responsibilities*
Directly support research projects through the project lifecycle- including project analysis and requirements gathering, design, and development
Develop, test, and maintain mobile applications for Android and iOS platforms
Consult with faculty to determine software or system functional specifications for research applications typically using mobile platforms such as iOS and Android, or Python, Flask, Django, JavaScript, and other common research programming languages and platforms
Stay current with relevant advances in higher education research programming support
Address reported bugs, break/fix issues
Consistently produce documentation that allows other group members to understand the product architecture, testing methodology, and deployment
Required Qualifications*
Bachelor's degree in a related field and/or equivalent combination of education, certification, and experience
Demonstrated ability to communicate, correctly, knowledgeably, and effectively both verbally and in writing, to different audiences
Demonstrated initiative in participating in growth opportunities, taking initiative for continuous development and improvement
A clean coder who takes the time to comment and document their work
Proficient with word processing, spreadsheet, and collaboration applications
Recent experience in creating or modifying code for iOS and/or Android mobile platforms, including Swift, Kotlin, React.js, React Native, or Vue.js; or demonstrated experience developing solutions with Python, including Flask or Django
At least 3 years of experience with systems analysis/programming activities in a business or academic environment
Desired Qualifications*
Master's degree in a related field and/or equivalent combination of education, certification, and experience.
Experience with the U-M computing environment or another academic computing environment.
Experience in programming components for research experiments using Arduino or a similar platform
Demonstrated experience working directly with faculty in a research lab setting
Demonstrated experience with a version control system
Able to work on Mac, Windows, and Linux environments
Experience with any of the following:
R, C, Arduino, Serial or IP communication, Database development and SQL, JavaScript, Vue.js, React.js, React Native, AR/VR development, machine learning, HTML, CSS, TEI, XML, Adobe Suite, Figma, Miro.
Experience, familiarity, or interest in user experience design