Supporting undergraduate success with AI adaptive tutoring and course recommendation
Zachary Pardos, Professor
Education
Applications for Spring 2025 are closed for this project.
This project seeks to fill technical new researcher positions in the AskOski and OATutor research and development teams.
The AskOski project (https://askoski.berkeley.edu/about) is a research and development effort lead by Professor Pardos to transfer the latest in big data and machine learning research to the domain of course guidance in higher ed. The recommender system is live in-production at Berkeley, with partial deployments at several other campuses. The project also extends to research deployed at systems of higher education outside of California. The team consists of around five senior developers and a lead developer from industry, who is a URAP alumni.
Open Adaptive Tutor (OATutor) is the field's first open source adaptive tutoring system based on Intelligent Tutoring Systems principles, advancing the latest in GenAI and education research and putting it into practice at Berkeley, and several campuses in the community college and state systems of higher education in California.
Role: There are several available roles, each with different tasks and learning outcomes:
(1) Machine learning engineer. This role involves optimizing evaluating experimental machine learning models. Tasks include training predictive models and testing them on several datasets, increasing runtime efficiency, and working with researchers to integrate successful approaches in to the production system. Learning outcomes include familiarization with one or two modern neural network models (e.g., word2vec, RNNs, Transformer-based models) and learning how ML can be integrated into a live product.
(2) Front-end Developer. This role extends the functionality or robustness of the system on the web-based front-end written in AngularJS (AskOski)/React (OATutor). Tasks include adding additional features to the frontend, implementing UI improvements, and optimization of back-end calls and subsequent data processing. Learning outcomes include familiarization with modern web programming paradigms and exposure to a product development stack.
(3) Back-end Developer. This role extends the functionality or robustness of the recommender system on the Python-based back-end. Tasks include implementing enhancing a transcript upload features that will aid transfer students in evaluating how their credits will transfer. Familiarity with MySQL, Pandas, Flask, or AWS Lambda is encouraged. Learning outcomes include familiarization with back-end systems and programming, database management, and exposure to a product development stack.
(4) Data Pipeline Developer. This role involves designing and developing the machine learning and data preprocessing pipeline for AskOski or content parsing and rendering pipeline for OATutor. Tasks include generalizing data schemas for extending support for AskOski to a multicampus framework, streamlining and optimizing the machine learning model training by using prior trained models, and maintaining the pipeline for new frontend and backend feature additions. Learning outcomes include familiarization with Apache Airflow and real-world workflows for a production machine learning pipeline.
(5) Quality Assurance Engineer. This role involves researching and applying frameworks for assuring the quality operation of new releases of lab software projects. Tasks may include (a) writing unit and regression tests (b) automated testing using github (c) writing selenium / phantomjs-based tests. Learning outcomes include familiarization with testing and CI/CD technologies including Docker, Kubernetes, and Github Actions.
Qualifications: Requirements:
For position 1: Experience with neural networks in pyTorch, tensorflow, or Keras
For position 2: Angular or React JavaScript (for front-end)
For position 3: Python and Flask (or AWS Lambda), ideally MySQL (back-end)
For position 4: Data science / data engineering skills, ideally Airflow
For position 5: Experience with testing and deployment frameworks
Hours: 6-8 hrs
Off-Campus Research Site: Remote
Related website: http://oatutor.io
Related website: https://askoski.berkeley.edu/about