Curricular Practical Training (CPT)


Please click here for OIP: Office of International Programs

Note that guidelines for CPT from OIP might be slightly different from CS department instructions. Both sets of guidelines must be followed by students seeking CPT (e.g eligibility and allowed maximum hours during Spring and Fall Semesters)


Purpose:  Curricular Practical Training (CPT) is a program that allows temporary employment authorization for International students in F-1 Student visa status.  CPT allows students to take up an off-campus training/internship.  Some majors require students to fulfill an off-campus training/internship in order to graduate.  The Computer Science Department does not require an off-campus internship or training as a condition for graduation; therefore, CPT approval is at the discretion of the department and is not guaranteed.

Length:  CPT is semester based.  CPT will begin no earlier than the first day of instruction and must end no later than the last day of final exams for the semester.


  • GPA >= 2.0 for undergraduate students; GPA >= 3.0 for Graduate Students 
  • Good academic standing, student must not be in probation at the time CPT is required
  • Valid F-1 status
  • Enrolled full-time. Minimum 12 units for undergraduate students or 8 units for graduate students.  Waitlisted classes will not be counted towards full time requirement 
  • Fulfilled one year full-time requirement.  You must have been enrolled full-time for at least one full academic year prior to submitting a CPT application.  One year full-time enrollment may be fulfilled at SF State, a previous university, or between multiple universities
  • Internship offer letter from employer
  • Enrollment in CSC 694 (for undergrads, Cooperative Education) or CSC 893 (for graduate students, Supervised Industrial Research) in the same semester in which you are employed

Please note: CSC 694 and CSC 893 are optional courses approved at the discretion of the Computer Science Department.  

CSC 694 and CSC 893 can be taken for 1 unit, up to three times total, and cannot be used as an elective or to fulfill minimum course load requirements.  CS Department requirements are in addition to any requirements dictated OIP

Fall/Spring CPT

In order to ensure adequate focus on academic obligations, Fall and Spring CPT are approved on a case-by-case basis and for up to 20 hours per week.  The steps below are the requirements for the Computer Science Department; you may have other required steps as dictated by OIP.

  • Provide Professor Petkovic, via email, your current GPA and planned course load for the semester in which you are applying for CPT
  • Obtain an offer letter, with clearly stated start/end dates and number of hours anticipated per week (to a maximum of 20 h/week), to be sent to Professor Petkovic for approval
  • Complete the CPT form and meet with Professor Petkovic for approval and signature
  • Obtain a permit code for CSC 694 or CSC 893; you may not be able to add the approved course until the first week of classes
  • Upon completion of the internship, complete the required summary report and submit it, via email, to Professor Petkovic.  For more information, please refer to the syllabus: CSC 694/893 Industrial Research Syllabus
  • Graduate Students enrolled in Culminating Experience Courses must have their committee chair send an email to Professor Petkovic approving the request for CSC 893 enrollment. 

Summer CPT

Students who qualify for CPT are eligible to work full time in the Summer semester

Summer CPT applicants will follow the same steps as required for Fall/Spring CPT