Research Software Engineer (Applied AI/ML)
AI Reasoning & Human-AI Systems
Wisdom & Culture Lab, University of Waterloo, Canada
Anticipated start: Winter/Spring 2027
The Wisdom & Culture Lab at the University of Waterloo is seeking a Research Software Engineer to join two new interdisciplinary research programs at the intersection of artificial intelligence, reasoning, forecasting, and human-AI interaction.
The position is designed for someone who enjoys turning research ideas into robust computational systems. You will work closely with two postdoctoral researchers, Professor Igor Grossmann, students, and external collaborators to build the technical infrastructure underlying research on AI reasoning and human-AI decision systems. One of the projects is conducted in partnership with Defence Research and Development Canada (DRDC), Dr. David Mandel, and provides unusual opportunities to connect with real-world expert communities.
This is a research-engineering position and not a conventional software-development or academic postdoctoral role. The successful candidate will have substantial responsibility for translating experimental requirements into reliable research software while helping the team keep pace with a rapidly changing AI ecosystem.
Responsibilities
-
Develop and maintain research software for experiments involving contemporary language models
-
Integrate frontier-model APIs and open-source/open-weight models into experimental pipelines
-
Build reusable infrastructure for model evaluation, data collection, experimentation, and reproducibility
-
Implement research prototypes developed with the scientific team
-
Support model adaptation and computational experimentation where appropriate
-
Develop tools connecting AI systems with behavioral experiments and research interfaces
-
Maintain well-documented, version-controlled research code
-
Monitor technical performance, diagnose failures, and improve reliability and scalability
-
Work with postdocs and trainees to turn experimental specifications into functioning systems
-
Contribute to open-source releases and technical documentation
Qualifications
Competitive candidates will have several of the following:
-
Strong Python and software-engineering skills
-
Experience working programmatically with contemporary LLMs
-
Experience with model APIs and/or open-weight language models
-
Familiarity with ML tooling and modern AI research workflows
-
Experience developing reproducible experimental or evaluation pipelines
-
Strong Git/version-control practices
-
Ability to write maintainable, documented research software
-
Comfort working in a rapidly changing technical environment
Assets include experience with model adaptation or post-training, evaluation infrastructure, web applications/interfaces, cloud computing, databases, experimental platforms, or human-AI research.
A graduate degree in computer science, machine learning, data science, computational cognitive science, or a related area is useful but not required. Demonstrated technical ability and experience building research-quality systems will matter more than specific credentials.
What the position offers
You will work on research questions rather than commercial product development, with considerable latitude in technical implementation. The position spans two complementary projects and provides opportunities to collaborate with researchers in AI, psychology, forecasting, and decision science, contribute to publications where appropriate, and help shape open-source research tools.
Employment details
-
Appointment: approximately 0.6 FTE (~21 hours/week), initially for 24 months, renewable subject to funding and performance
-
Salary: CAD $54,000-$58,000/year at 0.6 FTE, plus applicable benefits
-
Location: University of Waterloo; hybrid work arrangements may be possible
-
Start: Winter/Spring 2027, with flexibility
Application
Please submit a CV or résumé, a brief cover letter, and links to relevant code, GitHub repositories, technical projects, or other work samples where available. In your letter, briefly describe a technical research project in which the initial implementation did not behave as expected, how you diagnosed the problem, and what you changed.
Applications will be reviewed beginning Nov 1 and continue until the position is filled.
Send materials to waclab@uwaterloo.ca, subject line “AI Research Software Engineer.”