CS @ UTRGV / PHD
New PhD Students

Whether you're arriving with a prior graduate degree or coming from outside computer science, this page covers what you need to know at the start of your PhD: how prior coursework is evaluated for transfer credit, what leveling may be required, and the program policies every student and GRA should understand.

Students who enter the program with prior graduate coursework may be eligible to transfer credit toward the degree or waive degree requirements. The program evaluates each student individually at admission to assess which courses can be applied.

Transfer Limits

  • Students with an earned MS degree may have up to 18 credit hours of coursework waived
  • Students with graduate credit not part of a completed degree may transfer up to 9 credit hours
  • Courses must have been completed with a grade of B or higher
  • Course content must substantially overlap with an approved UTRGV equivalent
  • Dissertation research hours are not transferable

Process

Transfer evaluation is managed by the program director after admission. The official DegreeWorks auditing system does not correctly show transfer waivers, so the program director will send you information on your applied transfer credits individually.

Students entering without a BS or MS in Computer Science or a closely related field will meet with the program director and their adviser to discuss which leveling courses they need in order to be successful. Undergraduate leveling courses may be taken for credit or audited. The only reason to take them for credit is if there are not enough graduate-level courses you are ready for to satisfy your full-time hours requirement.

Contact the program director if you are unsure whether your background requires leveling coursework.

Theory

The heart of any Computer Science undergraduate program is Data Structures & Algorithms, which combines programming with algorithmic analysis and proof techniques to equip students to analyze, evaluate, and design computational processes. Students entering without a CS background will most likely need to take or audit CSCI 3333.

Basic knowledge and skills
Familiarity with discrete math and basic algorithm analysis — logic, sets, proof techniques, asymptotic (e.g. Big-O) notation. The background you get from undergraduate discrete math and data structures & algorithms.
Needed before: Required theory elective (CSCI 6323 or CSCI 6339), other courses emphasizing theoretical analysis.

Students from a STEM background who have already taken higher-level math (calculus, linear algebra, differential equations) typically have the mathematical maturity to start CSCI 3333 directly. Others may need to take or audit CSCI 3310 first to build the discrete math foundation.

Programming

Programming skills are a prerequisite for nearly every course in the program.

Basic knowledge and skills
Able to design, write, and debug scripts and simple programs. Comfortable with functions, loops, classes, and basic data structures like arrays, lists, and dictionaries. Able to use external libraries. The kind of programming you do in undergraduate CS1/CS2 courses. Many classes and research areas use Python, a more accessible language.
Needed before: Nearly all CSCI courses.

Since CSCI 3333 is taught in C++, students who need to take or audit that class need to learn C++ before or alongside it. There are plenty of resources to do this on your own, or you can audit CSCI 2380.

Online resources:

Traditional textbook:

Undergraduate course to take or audit:

Most research work in ML and AI uses the Python programming language. Learning python on your own is good preparation and also good practice with a higher-level programming language.

Machine Learning and Artificial Intelligence

The required ML/AI courses (CSCI 6344, CSCI 6366, or CSCI 6379) do not assume prior ML experience. Those courses provide the basic skills and knowledge in this area for other, more advanced courses. They do however have recommenations for basic programming and mathematics background.

Basic knowledge and skills
Practical experience using data sets and learning models. Data preprocessing, feature encoding, evaluation/loss functions, training, validation, model selection. The applied skills you learn in an undergraduate introduction to machine learning course or self-study with scikit-learn.
Needed before: More advanced elective courses.

Mathematics

Graduate research and coursework in computer science is heavily founded on mathematics and formalism. Students must be prepared in subjects such as calculus, linear algebra, and probability & statistics. Students from a STEM background have likely already taken these courses as an undergraduate. If you have not, self-directed online resources and undergraduate MATH courses are available as needed.

A strong background in probability & statistics is increasingly valuable for modern CS research. Students should consider graduate MATH courses appropriate to their research area as interdisciplinary electives.

All PhD students are required to train and contribute to the teaching mission of the department. There are two ways to fulfill this requirement:

  1. Teach one semester as an instructor for an undergraduate course, under the supervision of a faculty member. You must have completed at least 18 hours of your PhD coursework before teaching.
  2. TA two semesters as a teaching assistant, at approximately 10 hours per week per semester.

Teaching or TAing is not paid as a separate position. It is part of the program requirements. Students who are also Lecturers with the University fulfill the requirement through their normal teaching duties.

The program director will reach out about departmental needs each semester. If you have a preference for when you teach or TA, discuss that with your adviser and communicate to the program director early.

The university's Graduate College academic probation and suspension policies ↗ apply to PhD students.

For PhD students, the cumulative GPA that determines academic standing is calculated on 8000-level courses only. A graduate course numbered below 8000 does not count toward your PhD cumulative GPA.

Your GRA is a job. Like any job, you are expected to show up, do the work, and meet the expectations your employer sets. Your adviser has the right to dismiss you from their research group if you are not meeting those expectations.

The program asks advisers to conduct regular evaluations of their students and to provide a warning and a reasonable probationary period before dismissal, except in cases of serious misconduct. If you are struggling, communicate with your adviser early — problems are much easier to address before they escalate.

If you lose your adviser, you cannot continue in the PhD program without finding another adviser willing to take you on. The program will give you a limited time to find a replacement. If you cannot, your options are:

  • Pause and rejoin — leave the program and reapply when you have secured a new adviser commitment.
  • Apply credits to an MS — your completed coursework can be applied toward the MS in Computer Science if you do not already hold that degree.