Undergraduate Teaching Assistant (UTA) Information

The UTA Application is OPEN. Soft deadline 11/21/2025

Apply

Upon successful completion of your application, you will receive an email confirmation. You can also double check if your application has been recorded by revisiting the application link. If you can fill out an application again, we did not receive it.

We cannot hire students who will be residing outside the country (this includes studying abroad) and we cannot accept anyone on a volunteer basis. You must be an enrolled student during the semester you are a UTA i.e., not on leave. Even if you have been a UTA previously, you must re-apply to be a UTA each semester.

For 101/201 -- If you choose one as a first choice and the other as a second choice, you will not likely be considered for the second-choice course, regardless of if you were a previous UTA for that course. For example, if you put 101 as your first choice and 201 as your second choice, you will not be considered for 201 because it is your second choice. This is only the case for 101/201 because of the number of applications we receive.

Applications can be submitted after that and will continue to be open throughout the first two weeks of the semester; however, we cannot guarantee full consideration, especially for courses that will hold interviews. Depending on which course(s) you applied for, you may receive separate emails with follow up surveys or questions. Students applying for 101, 201, 210, 230, & 330 will have to interview. Different courses have different timelines for UTA selections.

Contact the UTA Program Administrator, Jackie Okoh, uta-program@cs.duke.edu, if you have any questions about being a UTA or your application.

Overview

If you have taken a CompSci course previously, then you know there are many other people helping the professor to support your learning in that course, e.g., returning feedback about your assignments, reviewing concepts in a recitation section. Most of these duties are done by undergraduate students just like you! Here, you can get a chance to take part in a rewarding job, allowing you to help your fellow students out as they go through the same journey you once did.

 

Consideration

Ideally, you loved the course that you want to UTA for! You should have at least taken the course before or have the equivalent background experience in the course topics and programming languages or communicate with the professor that you feel confident that you grasped the materials covered in the course you would like to UTA.

If you have the time and expertise, you can indicate that you are willing to be a UTA for multiple courses (of your preferred choices). We will coordinate with you if we have such need.

Courses that need UTAs for Spring 2026

CourseExpected DutiesConsideration
CompSci 94: Introduction to Programming Via Animation and 3D Virtual Worlds (Rodger)
  • Attend meetings
  • Grade assignments
  • Hold office hours
  • Answer Ed questions
  • Completion of CompSci 94 or CompSci 101.
  • Must be able to attend lecture on Tuesday & Thursday from 10:05-11:20am.
  • Preparation for programs required in advance. 
CompSci 101: Intro to Computer Science (Velasco)

There are two types of TAs:

  • Lab TA
  • Grader TA

Note: While we aim to accommodate preferences for TA roles, assignments are not guaranteed.

Responsibilities for all TAs:

  • Hold office hours
  • Answer Ed questions
  • Assist with exam logistics
  • Grade exams, including the final

Additional Role-Specific Duties:

  • Lab TA:
    • Attend one lab training per week
    • Record a lab review (videos)
    • Lead a lab section
    • Grade labs
  • Grader TA:
    • Grade assignments
  • A technical interview is necessary for prospective new UTAs.
  • Estimated time commitment: 4-6 hours/week.
  • While it's not mandatory to be available to lead a lab section, preference will be given to those who are.
     
CompSci 173 CN-001: Cinema Perspectives on Artificial Intelligence (Nemecek)
  • Grading assignments
  • Supporting students with project work
  • Reading papers and watching films in order to keep up with course content
  • Attend lecture (preferred)
     

 

  • Min. Requirements: strong interest in cinema and AI.
  • Strong knowledge of cinema or AI. 
CompSci 201: Data Structures and Algorithms (Astrachan (001) & Steiger (002)
  • Attend weekly meetings
  • Grade assignments
  • Lead discussion section
  • Hold office hours in the evening
  • Answer Ed questions
  • Grade exams and final
  • Must have availability to lead a discussion section, which are throughout F 8:30am–4:20pm.
  • Interview necessary for new UTAs.
  • Estimated 6-8 hours/week.
Compsci 210D: Intro to Computer Systems (Lentz)
  • Attend a weekly meeting
  • Lead discussion section
  • Hold office hours
  • Answer Ed questions
     
  • Must have availability to lead a discussion section
  • Interview necessary for new UTAs
  • Estimated 6-8 hours/week
Compsci 216: Everything Data (Stephens-Martinez)
  • Attend meetings
  • Grade homework and exams
  • Grade projects
  • Testing exams
  • Helping in lecture
  • Holding office hours
  • Writing autograder/scripts
  • Creating course content
  • Answer Ed questions
  • Strong preference for students who have taken CS 216 or proficiency programming in python and other statistics/data science experience at the 200+ level.
  • Estimated 5-7 hours/week.
COMPSCI 230: Discrete Math for CompSci-(Nemecek)
  • Attend weekly all-staff meetings
  • Grade assignments
  • Lead recitation session
  • Hold office hours in the evening
  • Answer Ed
  • Grade exams
  • Min. requirement: CompSci 230 or equivalent. You should be able to handle the concepts the students work with in this course.
  • Recitation is various times on F.
COMPSCI 240: Race, Gender, Class & Computing (Washington)
  • Grade
  • Answer Ed
  • Hold office hours
  • Min. requirement: Completion of CompSci 240 with a minimum grade of a B.
  • Attend lectures (One TA)
COMPSCI 250D: Computer Architecture (Cross ECE 250D)- (Wills)
  • Attend weekly meetings
  • Grade exams and homework
  • Lead recitation session
  • Hold office hours
  • Answer Ed
  • Interview necessary for new UTAs.
COMPSCI 260: Introduction to Computational Genomics- (Hartemink)
  • Hold office hours (2 hour per week)
  • Grade problem sets in collaboration with the graduate TAs
  • Answer questions on Ed
  • Strong knowledge of python.
  • Familiarity with course content from COMPSCI 260.
  • Course structure may slightly change, so expected duties may slightly change accordingly.
COMPSCI 270: Math for AI (Tomasi) 
  • Hold office hours
  • Answer Ed queries
  • Help grade assignments and exams (grading parties with Gradescope) 
  • Minimum requirements: Completion of COMPSCI 527 or equivalent.
  • Very fluent and comfortable with linear algebra and calculus.
  • Strong knowledge of Python and numpy well.
COMPSCI 308: Advanced Software Design and Implementation-(Duvall) 
  • Evaluate student projects
  • Attend regular planning meeting
  • Independently meet with students regularly
  • Grade student demos
  • Min Requirement: Completion of COMPSCI 307 and internship experience by Fall 2023 OR COMPSCI 308
CompSci 316 D: Intro to Database Systems (J. Yang)
  • Attend weekly staff meetings
    Lead or help out with discussion sections (optional)
  • Hold office hours
  • Answering Ed questions
  • Grade assignments and exams
  • Monitor the progress of team projects and provide feedback on milestones throughout the semester
  • Review and grade team projects at the end of the semester
     
  • Must have taken CompSci 316 or 516 and received A- or better.
COMPSCI 330: Design/Analysis Algorithms-(P. Agarwal & Steiger)
  • Attend regular grading sessions
  • Hold office hours
  • Grade exams
  • Run discussion sections
  • Answer questions on Ed
  • Interview necessary for new UTAs.
CompSci 334: Formal Languages and Automata with Applications (Rodger)
  • Grade assignments
  • Hold office hours
  • Answer Ed questions
  • Attend weekly meetings
  • Grade exams and final
  • Successful completion of CS 334. 
COMPSCI 342: Information and the Internet- (Astrachan) 
  • Oversee peer grading
  • TBD
CompSci 345: Graphics Software Architecture- (Reed)
  • Assist students with debugging and general coding logistics 
  • Familiarity with C/C++and gdb/lldb required.
CompSci 356: Computer Network Architecture- (Brockelsby)
  • Grade assignments
  • Hold office hours
  • Answer Ed questions
  • Attend weekly meetings
  • Grade exams and final

Interview necessary for new UTAs.

Estimated 6-8 hours/week.

COMPSCI 370: Intro to AI-(Songdechakraiwut)
  • Grade assignments
  • Attend meetings
  • Hold office hours
  • Answer Ed questions
  • Open to leading discussion sections

     
  • Completion of CompSci 370D (highly desirable if completed CompSci 370D in Fall 2025)
CompSci 372: Introduction to Applied Machine Learning (Fain)
  • Assignment & exam grading
  • Hold office hours
  • Answer Ed questions
  • Weekly staff meeting
  • Keep up with current class material
     
  • Python programming experience.
  • Applied machine learning experience including deep learning.
  • Timely and professional in grading and communication.
  • Strong preference to have taken the class before.
CompSci 390-03 Distributed Systems (Chase)
  • Attend a weekly meeting
  • Lead discussion section
  • Hold office hours
  • Answer Ed questions
     
  • Must have availability to lead a discussion section
  • Interview necessary for new UTAs
  • Estimated 6-8 hours/week
COMPSCI 516: Database Systems-(Roy)
  • Attend staff meeting
  • Holding office hours
  • Answering Ed questions
  • Grading assignments
  • Helping with projects
  • Strong preference given to those who have taken 516
  • Otherwise, must have at least taken 316; in this case the role will be primarily helping with full-stack project (not grading) and with the docker environment, and familiarity with full-stack development and the 316 project (mini-amazon) is required.
COMPSCI 527: Computer Vision-(Tomasi) 
  • Hold office hours
  • Answer Ed queries
  • Help grade assignments and exams (grading parties with Gradescope) 
  • Minimum requirements: Completion of COMPSCI 527 or equivalent. 
CompSci 531D: Introduction to Algorithms (Rossman)
  • Help write and grade assignments and exams
  • Assist the Grad TA in holding recitation sessions
  • Answer Ed questions
  • Knowledge of basic algorithms, preferably students who aced CS 330 or have taken a more advanced algorithms course
  • Estimated 6-8 hours weekly
COMPSCI 572: Introduction to Natural Language Processing-(Dhingra)
  • Hold office hours
  • Help grade assignments and exams
  • Answer Ed questions
  • Need to have taken CS 572 in the past
CompSci 590-01: Seminar in Computational Biology: Protein Structure & Drug Design using CS, AI, & ML (Donald)
  • TA will maintain the class website in a timely fashion without errors
  • Posting papers that the students will read, receiving the lecture notes written by the students and their slides, and posting them to the website.
  • Maintaining site for reading papers.
  • There will be a recitation/office hours once a week where the TA can give the students help on how details of algorithms work as presented in class, and give them advice on their projects, which are computational.
  • There is little or no grading perhaps one quiz.
  • Give the students feedback on the lecture notes they write, which is basically feedback on an essay.
  • At the end of the class, there are projects and feedback from the TAs on the projects will be helpful if they can read the projects.
  • CS 230/231 or equivalent would be required
  • Having taken an algorithms class such as CS 330
  • An interest in computational biology or chemistry would be advised.
  • It would be necessary that the UTA can attend the class.

Duties and Commitment

Being a UTA is a serious obligation that requires a firm and substantial weekly commitment on your part. It requires timely checking and responses to communication (e.g. email, Slack, Ed). It is a semester-by-semester job that extends from the first day of classes through the end of final exams. You must re-apply each semester.

All UTAs will be required to attend a training session at the beginning of the semester.

Duties will vary between classes, but you can generally expect to do some of the following:

  • Grade – Responsibilities range from students’ assignments or in upper-level courses, projects. Sometimes a professor may have UTAs grade student exams.
  • Hold office hours – Most courses will have office hours in the evening. Office hours are used to answer student questions about topics covered in lecture, homework problems, etc.
  • Lead a recitation/lab – Lower-level courses such as 101, 201, 230, etc. have a discussion section where students will get more application problems on topics covered in class. UTAs will lead students through the problems and facilitate collaboration and discussion among students about the topic. UTAs will have to prepare beforehand by attending a lab meeting, and/or looking over the material, and/or doing the problems beforehand so that they can come prepared for answering questions.
  • Answer ED questions – Most courses use ED as a tool where instructors can post course announcements and communicate important information to students. Students can use this platform to ask questions about logistics of the course, get clarification on the homework, or a study problem. The professor cannot answer all questions in a timely manner, so UTAs will also respond to questions that students may have.
  • Attend planning meetings – Faculty will arrange a regular meeting to gather all their UTAs so that they can prepare UTAs for the upcoming week or address questions and concerns that UTAs may also have.
  • Meet with student groups – Some project-based courses such as 308 or 316 will require that UTAs independently meet with the group of students that they are assigned to.
  • Administrative duties - If you are a Head UTA, you may have to send out emails and organize various UTAs for specific duties. The professor will be in close contact and instruct you.
  • Attend lecture - Some faculty need UTAs during regular class time because the course is structured like a lab.

Compensation

Compensation is $17.00 per hour. Head UTAs are compensated at $18.00 per hour. You must detail your hours biweekly on the CS UTA app as well as fill out a timecard on time at Duke@Work.

Work Study

Work study is not required for this job, but it is encouraged. You do not have to be on financial aid to be on work study. Please see the Duke Financial Aid Work Study section for more information on how to sign up for work study.