Software Developer Senior
Ann Arbor, Washtenaw County, Michigan, 48113, USA
Listed on 2026-01-12
-
Software Development
Software Engineer, Python
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.
Job SummaryOur staff's mission is to collaborate, create, and innovate alongside our talented faculty and students. We strive to be the best possible resource to the ROB community by being proactive, forward-thinking, and streamlined in our work. We support the global impact of the ROB community with our commitment to teamwork, cooperation, and mutual success toward common goals.
- Lead software design, development, and testing in C++ and Python.
- Full-time position in Ann Arbor, MI.
- Annual salary of $90k to $120k depending on experience.
- Hybrid options and flexible working hours available.
- Two-year term with option for reappointment if funding is available.
- Work collaboratively in a dynamic team of students and professionals.
- Meet regularly with other team members and lab PI.
- Opportunities to contribute to architecture and design.
Michigan Engineers are world-class educators, researchers, students, and staff who strive to build a people-first future. As part of a top national public research institution, Michigan Engineering's mission is to provide scientific and technological leadership to the people of the world, develop intellectually curious and socially conscious minds, create collaborative solutions to societal problems, and promote an inclusive and innovative community of service for the common good.
Responsibilities*- Design, develop, and implement major enhancements and revisions to Vortex, working independently and as part of a collaborative development team, troubleshoot complex issues and improve system performance and reliability.
- Develop and maintain unit and integration test suites to ensure code quality and long-term maintainability.
- Design and implement a hardware-in-the-loop testing strategy in collaboration with the laboratory Principal Investigator.
- Partner with a technical writer to create and maintain clear, user-focused software documentation.
- Prepare and publish regular software releases to the Vortex website and the Python Package Index (PyPI).
- Maintain and improve the continuous integration (CI) and build systems supporting Vortex binary releases.
- Mentor and guide a team of PhD, MS, and undergraduate students contributing to software development projects.
- Bachelor's degree in computer science, electrical/computer engineering, or a related field with 5 years of experience.
- Appreciation of elegant software design, including system architecture, functional language value, and continuous software testing.
- Proficient in software development in modern C++ (C++11 or newer).
- Proficient in modern CMake (CMake 3 or newer).
- Proficient in version control with Git.
- Experience with software development in Python (3.5 or newer).
- Excellent oral and written technical communication skills in English.
Positions that are eligible for hybrid or mobile/remote work mode are at the discretion of the hiring department. Work agreements are reviewed annually at a minimum and are subject to change at any time, and for any reason, throughout the course of employment. Learn more about the .
Additional InformationThis is a term-limited position through January 2028 with possible renewal based on funding extensions.
Background ScreeningThe 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.
U-M EEO StatementThe University of Michigan is an equal employment opportunity employer.
#J-18808-Ljbffr(If this job is in fact in your jurisdiction, then you may be using a Proxy or VPN to access this site, and to progress further, you should change your connectivity to another mobile device or PC).