COS UCA Job Catalog

This page provides a general description of the responsibilities of all the jobs that are available to UCAs in Princeton University’s Department of Computer Science. It also provides a description of the different job categories.

General Job Categories #

The department employs undergraduates to assist with many COS courses. The jobs are divided into three categories (most paid $17/hr):

  • Lab TAs who help students in undergraduate-staffed office hours
  • Graders who grade assignments and (in some courses) exams
  • In-class TAs who help students in the classroom (these positions are called facilitators or precept assistants)

Some Independent Work (IW) seminars also hires 1-2 UCAs to do a combination of all three jobs (assisting in class to provide feedback to student presenting their projects, grading projects, and providing office hours for students to get help with their projects).

Finally, some courses also hire a higher-level position (paid $20/hr):

  • Managers who coordinate and supervise the work of other UCAs (typically managers have already worked in the course in a previous semester)

Specific Job Categories #

In addition to the general jobs, there are some specific jobs.

For instance, the Intro COS Lab (which centralizes the undergraduate-staffed office hours for COS 109, 126, 217, and 226) hires a Head Intro Lab TA or Team. The Intro COS Lab also hires a team of Interviewers, who interview prospective Intro Lab TAs.

Several courses may hire UCAs on an ad-hoc basis to help with course development or tool building.

Jobs #

Below is a description of all the jobs that are available, with a description of their responsibilities.

These jobs are not always hiring every semester, so please check TigerUHR directly for the list of jobs currently hiring.

Intro COS Lab TA Program #

Supervised by Prof. Jérémie Lumbroso (Spring 2023) and the Head Lab TA Team.

Team communication: Slack ( central COS UCA Slack: #lab-announcements, #126-lab, #2xx-lab)

The Intro COS Lab, currently in Lewis 121 and 122, is a place where students taking introductory courses can go for help in debugging their programs. The Intro Lab TAs are those glorious individuals working on the front lines, providing that help. The lab is available to students taking COS 109, COS 126, 217, and 226. The Intro Lab TAs are coordinated by the Head Intro Lab TA (possibly with an Assistant), who is an undergraduate. Most of the shifts are on evenings or weekends, and they last 2 hours. Typically, a TA either has two shifts per week, or is a substitute TA.

For more information about the job, the conditions for applying, and the pay rate, please see this page about becoming an Intro Lab TA job.

The Intro COS Lab uses the LabQueue to manage the queue of students waiting for help.

Read specific information about the job responsibilities for:

COS 126: Computer Science: An Interdisciplinary Approach #

For description and past ratings, see course page on Princeton Courses

Grader position #

Supervised by Prof. Jérémie Lumbroso (Spring 2023)

Team communication: Slack ( central COS UCA Slack: #126-grading, #126-grading-notifications)

Description:

This position grades the programming assignments and programming exams, in Java.

Graders work through codePost to provide high-quality, supportive feedback to introductory CS students. A detailed rubric is included, and the work consists of reading and understanding the student’s code, and providing feedback on the code’s correctness, efficiency, and clarity according to the COS 126 Style Guide.

Responsibilities (~4-5 hrs/week):

  • Attend weekly grader meeting 1h/week (as of Fall 2022: Wednesdays 4:30-5:30pm) to review rubric and start grading synchronously

  • Read the grader brief that is posted every week; communicate promptly when you are not able to grade on any given week

  • Grade asynchronously about 3-6h/week, about 8-15 submissions, flexible (as of Fall 2022, grading due at Friday 4:30pm every week)

Requirements:

  • Having taken COS 126 (B+ or better typically, though exceptions are made)

  • Score of 3 or higher on the supplemental application quiz (evaluated objectively using a rubric)

  • Strong empathetic skills

  • Good written communication skills

Grading Manager position(+) #

Supervised by Prof. Jérémie Lumbroso (Spring 2023)

Team communication: Slack ( central COS UCA Slack: #126-grading-leaders, #grading-leaders)

Description:

This position supervises the UCA COS 126/226 graders, checks their work, and is responsible for the grading process. The position may also involve creating new materials to support the grading mission (such as the style guide, automation scripts, preparing grading briefs).

Responsibilities (~10-15 hrs/week):

  • Overall commitment of between 5-10 hours/week, depending on talent and creativity of applicants

  • Attend weekly grader meeting 1h/week (as of Fall 2022: Wednesdays 4:30-5:30pm) to help train graders and oversee the grading process

  • Answer questions from graders on Slack, create new rubric items when necessary

  • Grade challenging, late or left-over submissions (or delegate to other graders)

  • Regularly audit a subset of graders to ensure understanding of the COS 126 Style Guide and the assignment/exam rubric

  • Occasionally, grading managers (depending on their interests, creativity and talent) may be asked to create new materials to support the grading mission (such as the style guide, automation scripts, preparing grading briefs)

Requirements:

  • Having been a COS 126/226 grader for at least one semester, ideally two

  • Having a strong track record of grading (e.g. high quality, timely, and consistent grading)

  • Being able to communicate effectively with the graders

Precept Assistant position #

Supervised by Prof. Alan Kaplan (Spring 2023)

Team communication: Slack ( central COS UCA Slack: #126-precept-assistants)

Description:

Working alongside a graduate student or faculty preceptor, precept assistants are responsible for helping students understand the solutions to a set of active learning exercises (e.g., Java programming exercises, worksheets). Precept assistants will help students working on these exercises and be available to answer questions or explain the course material.

An ideal candidate is someone who can: Connect with a wide variety of students, encourage them to ask questions, and explain the course material in a variety of ways. If you can do this, while being enthusiastic and patient, you’d no doubt make an excellent precept assistant.

Responsibilities (~2-4 hrs/week) :

  • Prepare by reviewing upcoming precept exercises before class (1h/week)

  • Attend two precepts per week and answer students’ questions (2-3h/week)

  • Work under the direction of a preceptor

Requirements:

  • Having taken COS 126

  • Being able to communicate effectively with a diverse group of students

Schedules (updated for Spring 2023):

Before applying to this position, please confirm you are available for at least some of the following precepts:

PreceptScheduleLocationPreceptor
Precept P01Mon/Wed, 11:00am-11:50amFriend 009Kathryn Wantlin
Precept P10Mon/Wed, 11:00am-12:20pmFriend 109Darby Haller
Precept P02Mon/Wed, 12:30pm-1:20pmFriend 009Andrea Wynn
Precept P02AMon/Wed, 12:30pm-1:20pFriend 109Malinda Huang
Precept P03Mon/Wed, 1:30pm–2:20pmFriend 009Prachi Sinha
Precept P11Mon/Wed, 1:30pm–2:50pmFriend 109Seanna Zhang
Precept P04Mon/Wed, 2:30pm–3:20pmFriend 009Tinotenda Chinamora
Precept P12Mon/Wed, 3:00pm–4:20pmFriend 109Mikako Inaba
Precept P05Mon/Wed, 3:30pm–4:20pmFriend 009Charlie Smith
Precept P13Mon/Wed, 4:30pm–5:50pmFriend 109Max Tchouambe
Precept P06Mon/Wed, 7:30pm–8:20pmFriend 009Alfredo Velasco
Precept P14Tue/Thu, 8:30am–9:50amFriend 109Anja Kalaba
Precept P07Tue/Thu, 9:00am–9:50amFriend 009Nanqinqin Li
Precept P08Tue/Thu, 10:00am-10:50amFriend 009Yuhan Zheng
Precept P08ATue/Thu, 10:00am-10:50amFriend 109Ben Strekha

COS 217: Introduction to Programming Systems #

For description and past ratings, see course page on Princeton Courses

Supervised by Prof. Christopher Moretti and Prof. Donna Gabai (Spring 2023)

Team communication: Slack ( central COS UCA Slack: #217-grading)

Description:

The COS 217 grader evaluates COS 217 assignment transcripts and code to grade and provide high-quality, supportive feedback on students’ submissions. Grading is done via codePost using primarily pre-defined rubric notes and deductions.

Responsibilities (~6-10 hours/week):

  • Attend weekly grader meeting ~1 hour per week (Spring 2023: Thursdays 4:30-~5:30pm). During weeks an assignment is due, this meeting will refresh your memory of that assignment, describe common errors, and review the rubric and codePost items to prepare for grading. During weeks between assignment due dates, this meeting will serve as a grading session to do some synchronous grading and get questions answered.

  • Grade 8-15 submissions a synchronously. Typically this accounts for 4-8 hours per week, though some assignments may grade faster or slower than others.

Requirements:

  • Having taken COS 217 and gotten an A- or better (B+ will be considered)

COS 226: Algorithms & Data Structures #

For description and past ratings, see course page on Princeton Courses

Grader position #

Supervised by Prof. Jérémie Lumbroso (Spring 2023)

Team communication: Slack ( central COS UCA Slack: #226-grading, #226-grading-notifications)

This position grades the programming assignments in Java.

Same description as the COS 126 grader position (see above), except this position involves code that is more complex, and with the need to understand errors in the runtime or memory efficiency of the code.

In addition, the requirements involve having taken COS 226 and obtained a B+ or better (and also preferable COS 126, though not necessarily).

Grading Manager position(+) #

Supervised by Prof. Jérémie Lumbroso (Spring 2023)

Team communication: Slack ( central COS UCA Slack: #226-grading-leaders, #grading-leaders)

Same description as the COS 126 grading manager position (see above).

Precept Assistant position #

Supervised by Prof. Dan Leyzberg (Spring 2023)

Team communication: Slack

Description:

Working alongside a graduate student or faculty preceptor, precept assistants are responsible for helping students understand the solutions to a predefined set of multiple choice questions and coding exercises (on the Ed Lessons platform). Precept assistants will visit with students working on these exercises and be available to answer questions or explain the course material.

An ideal candidate is someone who can: Connect with a wide variety of students, encourage them to ask questions, and, is able to explain the course material in a variety of ways. If you can do this, while, also, highlighting the real-world impacts and inherent beauty of data structures and algorithms, you’d no doubt make an excellent precept assistant.

Responsibilities (~3-6 hrs/week) :

  • Prepare by reviewing upcoming precept exercises and assignments before class (1.5h/week)

  • Attend one precept per week and answer students’ questions (1.5h/week)

  • Optionally, attend a (paid) planning/socializing meeting for precept assistants (1h/week)

  • Optionally, hold office hours to help students with quizzes and assignments (2h/week)

Requirements:

  • Having taken COS 226

  • Being able to communicate effectively with a diverse group of students

  • Being able to describe the real-world impacts of data structures and algorithms

COS 240: Reasoning About Computation #

For description and past ratings, see course page on Princeton Courses

Grader position #

Supervised by Prof. Iasonas Petras (Spring 2023)

Team communication: Email

Description:

The COS 240 grader grades COS 240 students’ work and provides feedback.

Responsibilities:

  • Grade (asynchronously) students’ work and provide feedback for ~5-7 hours a week (on weeks when grading takes place, which is more or less every 2 weeks).

  • Attend (and participate in) grading consistency meetings (most likely online) taking place on Thursdays 4:30PM-5:30PM

  • Attend (and participate in) weekly status meetings (most likely online) taking place on Fridays 3:30PM-5:00PM

  • Meet grading deadlines consistently

Requirements:

  • Having taken COS 240 and performed well

  • Must have satisfactorily answered the supplemental survey

Lab TA position #

Supervised by Prof. Iasonas Petras (Spring 2023)

Description:

The COS 240 Lab TA holds office hours where COS 240 students can ask questions on and discuss the course material and the course’s assignments. "

Responsibilities (~6 hrs/week):

  • Hold 4 hours of office hours per week.

  • Attend (and participate in) weekly status meetings (most likely online) taking place on Fridays 3:30PM-5:00PM

Requirements:

  • Having taken COS 240 and performed well

  • Must have satisfactorily answered the supplemental survey

COS 324: Introduction to Machine Learning #

For description and past ratings, see course page on Princeton Courses.

Supervised by Prof. Ruth Fong and Prof. Jia Deng (Spring 2023)

Team communication: Slack ( central COS UCA Slack: #324-uca)

Description:

This position is a joint grader and office hour position.

For grading, you will be part of the team that grades our weekly assignments, which typically alternate between a written homework (i.e. pen-and-paper pset) and a programming assignment (i.e. IPython notebook). Typically, you will grade one problem (or part of a problem) a week according to a rubric.

For office hours, you will host a weekly 2-hour office hours (either in-person or virtual, we try to offer roughly 50%-50% options) primarily for helping studying get unstuck on our weekly assignments. Office hours will also provide prep support before our midterm and final.

Responsibilities (~ 5-10 hrs/week, depending on whether there is grading in a given week):

  • Attend and actively participate in 1-hour staff meeting on Zoom each week (Mon 4:30-5:30pm for Spring 2023)

  • Prep for hosting office hours each week (i.e. do assignment yourself, ~2 hours/week)

  • Host 2-hour office hour block each week

  • Grade asynchronously one problem/sub-problem (~3-5 hours/most weeks) for the entire class (weekly grading period starts Saturday and is due Tuesdays EOD for Spring 2023)

Requirements:

  • Having taken COS 324 and received a B+ or better

  • Strong written communication skills (for grading)

  • Strong oral communication and relational skills (for facilitating office hours)

Preferred:

  • Prior experience as a UCA (in any course)

COS 333: Advanced Programming Techniques #

For description and past ratings, see course page on Princeton Courses

Supervised by Prof. Bob Dondero (Spring 2023)

Team communication: Email, and staff mailing list cos333instructors@lists.cs.princeton.edu

Description:

A COS 333 UCA works with a graduate student TA to grade some semester-long projects.

Responsibilities:

These responsibilities refer to “Reading Period” and “Dean’s Date” as defined in the Registrar’s Office’s academic calendar.

  • Each UCA will participate in a ~2 hour Zoom pre-grading meeting with the lead instructor and graduate student TAs. During that meeting they will discuss the project grading rubrics. That meeting will occur sometime during Reading Period.

  • After Dean’s Date each UCA will grade 4-to-6 projects, approximately one per day. Some slippage of that schedule will be fine. The grading will be mostly asynchronous, but could involve some synchronous interaction with the members of the teams whose projects are being graded. An UCA will devote ~5 hours to grading each project.

  • Finally, each UCA will participate in a final ~4 hour Zoom meeting with the lead instructor and graduate student TAs. During that meeting they will finalize the project grades. That meeting will occur shortly before the day when course letter grades are due at the Registrar’s Office.

Requirements:

  • Having taken COS 333 and gotten an A- or better

COS 343: Algorithms for Computational Biology #

For description and past ratings, see course page on Princeton Courses

Supervised by Prof. Ben Raphael (Spring 2023)

Team communication: Slack ( central COS UCA Slack: #343-grading)

Description:

The primary responsibility of this position is to grade 5 homework assignments, midterm, and final exam. HW assignments consist of written exercises and short programming exercises. The written exercises are graded for correctness and clarity using a detailed rubric that will be provided. Programming exercises are graded for correctness, but not for quality of code.

UCAs who are interested in other tasks such as helping answer questions on Ed, holding office hours to answer student questions, or contributing to the development/debugging of new assignments are welcome to do so, and will be paid for time spent on these activities.

Responsibilities (~ 5-8 hrs/week):

  • Attend bi-weekly in-person staff meeting (<1hr)

  • Consistently meet grading deadlines

Requirements:

  • Must be COS or ORFE/MAT majors (other majors acceptable with relevant experience)

  • Must have taken COS 226 with a grade of B+ or better

  • Must be interested in course topics (computational biology)

COS 429: Computer Vision #

For description and past ratings, see course page on Princeton Courses

Supervised by Prof. Olga Russakovsky (Spring 2023)

Team communication: Slack ( central COS UCA Slack: #429-uca)

Description:

We are looking for students with strong background in computer vision to help in this next iteration of the course.

All UCAs will be expected to assist with grading of assignments and exams.

Beyond that, we would welcome help with:

  • UCA-run office hours

  • UCA support to help guide the final projects

  • UCA support with debugging any new assignments

  • UCA support with grading the poster session and/or the final project reports

  • UCA support with the two exam review sessions

Responsibilities (~5-10 hrs/week, depending on whether there is grading in a given week):

There are 4 assignments and 2 exams. These will be due approximately every 2 weeks and need to be graded within a week. UCAs will be expected to be available to turn the grading around within about 5 days, and to work closely with the grad TA responsible for each assignment.

Requirements:

  • Having taken COS 429 and gotten an A- or better

COS 433: Cryptography #

For description and past ratings, see course page on Princeton Courses

Supervised by Prof. Zeev Dvir (Spring 2023)

Team communication: Email

Description:

The position is for helping grade problem sets (about one Pset every other week). In addition, if the applicant is interested, they can also hold weekly office hours for additional pay.

Responsibilities (~6-10 hrs/week):

  • Attend grading meetings (about once in two weeks) to agree on grading rubrics.

  • Grade about one problem in each Pset (for all ~60-70 students of the course in Spring 2023) on Gradescope. There will be about 4-5 Psets in the semester.

Requirements:

  • Having a strong mathematical background.

COS 445: Economics and Computation #

For description and past ratings, see course page on Princeton Courses

Supervised by Prof. Matt Weinberg and Prof. Pedro Paredes (Spring 2023)

Team communication: Email + Slack ( central COS UCA Slack: #445-grading and #445-grading-subchannel-1 through #445-grading-subchannel-4)

Description:

UCAs for COS 445 are primarily responsible for grading (PSets, midterm, and final). That is, every UCA must grade assignments, and it is perfectly acceptable for a UCA to only grade assignments.

UCAs who are interested in other tasks (such as helping answer questions on Ed, providing advice on course policy, etc.) are welcome to do so (and be paid to do so).

Additionally 1-2 UCAs can instead volunteer to be the “Strategy Design Czar(s)”. The Strategy Design Czars do not grade assignments, but are responsible for maintaining the codebase for strategy design assignments. This role requires significant independence in comparison to grading, but would be fun for students who enjoyed the strategy designs more than the PSets. If you are interested in this, you should email Matt ( smweinberg@princeton.edu) and Pedro ( pparedes@princeton.edu) to discuss.

Responsibilities (~3-4 hrs/week):

  • Attend weekly in-person meeting Thursdays 4:30PM-5:30PM. These meetings will tee up grading for the most recently submitted assignment, and we will ask you to stay for the entire hour to grade assignments with other course staff in the room.

    Note:

    • We will always be as efficient as possible with these meetings (e.g. we won’t force you to show up if you’ve already finished grading, and we won’t force you to come in-person if you’ve previously attended a tee-off meeting and just need to sporadically ask questions, etc.). However, we do ask that you think of in-person attendance every week as the default, and block this time off on your calendar.

    • Many weeks, Matt and/or Pedro will take a subset of interested staff out for bubble tea at 5:30PM.

  • Grade asynchronously ~6 hours every 2 weeks. PSets are due every other Monday. Grading tees off on Thursday, and is due 10 days later on Monday. Because the next cycle starts soon after, we do need to be sticklers about deadlines.

  • Be available for ~6-8 hours (total) of grading the final on May 18/19. You do not need to change your travel plans to be on-campus to grade the final. If you have travel plans that prohibit you from grading (even remotely) during this period, this is OK, but please let Matt/Pedro know in advance.

  • There will be no staff meeting during Spring Break, and it is entirely feasible to complete your responsibilities without working at all over Spring Break. However, some UCAs prefer to grade the midterm over Spring Break, and we will have an optional remote tee-off meeting for those who want to do so.

  • Be prepared to give actual feedback on written PSet submissions to help students improve. We will try our best to make this as efficient as possible, but you should be prepared that any assignment that doesn’t receive full credit does typically require you to write something specific to that submission.

  • [For Strategy Design Czars only] There is a codebase for strategy designs on github that, afaik, is complete, bug-free, etc. However, every SD still requires an initialization (TigerFile submission needs to be set up for every SD, sample files need to be uploaded for students, files need to be downloaded from TigerFile), and a run (some submissions have bugs and will crash the execution, you’ll need to figure out which ones and edit/remove them, etc.). You will also be responsible for answering any questions about the coding portion of the SDs (because Matt/Pedro may not know the answer). This requires more independence than a typical UCA role, because this has always been designed/maintained by UCAs (there is a detailed SD czar onboarding document, and last year’s czar is an ECE MSE student who offered to be accessible with questions).

  • [For Strategy Design Czars only] You are free to do more interesting things with the SD codebase, if that interests you. For example, you are free to add more ‘check submitted files’ test cases so that there’s fewer buggy submissions, write more efficient code, write new ‘staff solutions’, or develop any new infrastructure that you think would be beneficial. But this is entirely optional—your ‘responsibility’ is just to make sure that SD files are uploaded in a timely fashion, and grades are computed in a timely fashion as well."

Requirements:

  • Having taken COS 445 and gotten an B+ or better

  • Must be available for a weekly 4:30PM-5:30PM staff meeting on Thursdays, in-person.

If you apply for this position, we will assume you are generally available 4:30PM-5:30PM Thursdays for an in-person meeting. Exceptions are possible, but you should email Matt ( smweinberg@princeton.edu) and Pedro ( pparedes@princeton.edu) with your situation before applying for this position.

COS 461: Computer Networks #

For description and past ratings, see course page on Princeton Courses

Supervised by Prof. Kyle Jamieson (Spring 2023)

Team communication: Course Slack

Description:

This position supports and grades the programming assignments for COS 461 (see https://github.com/kyleatprinceton/COS461-Public), supports precept content development, and other miscellaneous course duties.

Responsibilities (~2-10 hrs/week):

  • Attend weekly grading meetings

  • Hold supplemental office hours before programming assignment deadlines

  • Hold supplemental office hours before exams

Requirements:

  • Having taken COS 461 and gotten an B+ or better

COS 471: Web3: Blockchains, Cryptocurrencies, and. Decentralization #

⚠️ This course is brand new and has never been taught before, except as a pilot class.

Supervised by Prof. Rob Fish and Prof. J. P. Singh (Spring 2023)

Team communication: Slack ( central COS UCA Slack: #471-uca)

Description:

Students will assist the class AI’s in scoring programming assignments and speaker reflections based on a rubric. They will also be able to attend class and listen to the lectures and guest speakers in this new and highly sought-after class.

Responsibilities (~10 hrs/week):

  • Assist in the scoring of 2-3 programming assignments

  • Assist in the scoring of lecture or guest speaker reflections

Requirements:

  • Must be interested in the course subject matter

  • Good written communication analysis skills, must be better than ChatGPT.

  • Any applicant will be interviewed by the course staff prior to hire

COS 484: Natural Language Processing #

For description and past ratings, see course page on Princeton Courses.

Supervised by Prof. Danqi Chen (Spring 2023)

Team communication: Course Slack

Description:

This position is a joint grader and office hour position.

For grading, you will be part of the team that grades our assignments: there are 4 + 1 assignments throughout the semester (including one warm-up), and each assignment has a written component, and a programming component based on Colab. Typically, you will grade one problem (or part of a problem) a week according to a rubric.

For office hours, you will host a weekly 1-hour office hours primarily for helping studying get unstuck on our assignments, or provide prep support before midterm, or provide guidance on their final project.

Responsibilities (~4-8 hrs/week, depending on whether there is grading in a given week):

  • Attend and actively participate in 30-min staff meeting each week (Thursday 4:30-5pm in COS 401)

  • Prep for hosting office hours each week (0.5~2 hours; this really depends on your familiarity of the course materials. For the weeks that have an assignment due, you are expected to do the assignment yourself and it will take longer)

  • Host 1-hour office hour block each week

  • Grade asynchronously one problem/sub-problem (~4-6 hours for each assignment; there are 4+1 assignments in total throughout the semester) for the entire class.

  • Responsible for regrade requests after the grades are released (0-3 hours for each assignment; really depends on how many issues we may have).

  • Help with answer questions on Ed together with graduate TAs

Requirements:

  • Having taken COS 484 and gotten an A- or better

  • Ideally have prior experience as a UCA (in any course)

  • Strong written communication skills (for grading)

  • Strong oral communication and relational skills (for facilitating office hours)

External Courses Jobs #

Occasionally, the Department of Computer Science will hire UCAs for courses outside of the COS department. These positions are listed below, and may not recruit every semester. Please check the TigerUHR application for confirmation.

EGR 154: Foundations of Engineering: Linear Systems #

For description and past ratings, see course page on Princeton Courses.

Supervised by Prof. Bernard Chazelle and Dev Dabke (Spring 2023)

Team communication: Email

Description:

UCAs, working under the direction of the instructor and head TA will do one of the following three tasks (based on their preference): helping craft homework problems, grading, and facilitating help sessions.

Responsibilities (~3-5 hrs/week):

  • UCAs work from the second week of classes to the last day of classes. UCAs will not have to work during midterm week, spring break, or after Dean’s Date.

  • UCAs can work in person or entirely remotely depending on their preference.

  • UCAs will work about 3 hours per week and not more than 5 hours.

  • There is a weekly 30-minute meeting via Zoom (based on everyone’s availability)

  • UCAs can pick from among three different tasks depending on their preference:

    1. Grading, which happens remotely every Friday via Gradescope with a rubric provided by the head TA. Assignments are submitted on Thursday and we always return grades within 24 hours. UCAs will not be responsible for grading the midterm exam or final exam.
    2. Facilitating help sessions, which are on Monday and Wednesday from 4:30PM-7:30PM in COS 301. UCAs can help with all or part of one or both of these help sessions.
    3. Working with the head TA to create the homework, which must be done by each Wednesday, so we can post the assignment on Thursdays.

Requirements:

  • Must have taken EGR 154 and gotten an A, or have taken MAT 202/217 and having gotten a B+ or higher

  • Must be reliable and consistent

  • Must be communicative via email, and respond to emails within a few hours

IW Seminar Jobs #

The Department of Computer Science offers “IW seminars” for its majors, in which a faculty advises a group of 8-10 students each on their own project around a theme of the faculty’s choosing.

Generally, the faculty member is responsible for the overall theme of the seminar, and the UCA(s) is/are responsible for the logistics of the seminar. The UCA(s) is/are expected to be available to answer questions from students, to help students with their projects, and often to provide feedback during the group meeting time.

The meeting times as well as the specific themes of each seminars are updated every term on the IW seminar page of the Department of Computer Science.

➡️ Please note that a UCA for a seminar is expected to be able to make the class meeting time for the seminar. It is your responsibility to check that you are available for the IW seminar for which you apply to be a UCA.

Prof. Suma Bhat #

See academic website.

Team communication: Course Slack

Description:

This position primarily assists students in the seminar course.

A UCA attends (most of) the weekly seminars, listens to the students’ project updates and holds office hours.

Responsibilities (~3 hrs/week):

  • Attend the weekly seminar (Spring 2023: Fridays 11AM-12:20PM) and listens to the students’ project updates and action items

  • Hold office hours for ~3 hours/week for students to stop by around key deadlines (beginning of semester, midpoint checkpoint) and clarify conceptual questions and troubleshooting implementations

Requirements:

  • Must have been an UCA for an IW seminar or COS 333

Prof. Xiaoyan Li #

See academic website.

Team communication: Email

Description:

This position holds office hours to help answer students’ questions on using ML packages or coding with Python. The UCAs are also expected to help organize students’ project presentation in class and check their weekly progress.

Responsibilities (~7 hrs/week):

  • Attend weekly class meeting ~1.5h/week or 3h/week (Spring 2023: Fridays 11AM-12:20PM or 1:30PM-2:50PM)

  • Hold office hours 1h or 2h/week

  • Read students’ weekly progress report 2h or 3h/week

Requirements:

  • Passing an interview with Prof. Xiaoyan Li

  • Having completed an IW in machine learning or data science

  • Good programming skills with Python

  • Good verbal and written communication skills

Prof. Huacheng Yu #

See academic website.

Team communication: Email

Description:

UCAs participate in in-class discussions, give quick feedbacks to the student presentations in class and project proposal and mid-term reports, and hold office hours.

Responsibilities (~3 hrs/week):

  • Attend weekly class meetings (80 minutes)

  • Hold a 1-hr office hour every week

  • Attend TA meetings before “grading” the proposal and mid-term report

Requirements:

  • Must be COS or ORFE/MAT majors

  • Must have taken a COS 4xx (and gotten an A- or better) or a 5xx-level theory course