Curriculum Overview
Our online Post-Baccalaureate Certificate in Computer Science program offers a rigorous and concentrated, 100% online curriculum designed for students who are new to the field of computer science. The curriculum can be completed in as little as 1 semester or 1 year, depending on the track you choose.
Courses
Students may choose between two track options within the Post-Baccalaureate Certificate in Computer Science Program.
- The Certificate track consists of 5-6 courses (17-23 credits) depending on the student’s level of experience and can be completed in 1 year. Students who require additional programming training can start with CS 11 (6-course option). Other students may start with CS 15 and CS 61 (5-course option).
- The Master’s track consists of 2 courses (7 credits) and can be completed in as little as 1 semester. Students that complete the required courses with satisfactory academic performance will be able to enroll in the online Master of Science in Computer Science program.
- Cost per credit for the Post-Baccalaureate Certificate program in Computer Science is $1,730 for graduate-level courses (numbered 100 and above) and $1,010 for undergraduate-level courses (numbered below 100).
All of these courses are part of the online MS in Computer Science curriculum.
Certificate Track: Post-Baccalaureate Certificate in Computer Science
REQUIRED COURSES:*
4 Credits
In this course, data structures and algorithms are studied through major programming projects in the C++ programming language. Topics covered include linked lists, trees, graphs, dynamic storage allocation, and recursion.
3 Credits
This course covers foundations of discrete mathematics and an introduction to proofs. Topics include propositional logic, sets, relations and functions, counting, logic and methods of proof, combinatorics, graphs and digraphs, probability, and number theory.
STUDENTS MAY SELECT 2 OF THE FOLLOWING COURSES:
5 Credits
Learn the principles and application of computer programming languages, with an emphasis on the ideas and techniques most relevant to practitioners. The course explores abstract syntax, lambda calculus, type systems, and dynamic semantics.
4 Credits
In this introduction to the study of algorithms, explore strategies that include divide-and-conquer, greedy methods, and dynamic programming. Delve into graph algorithms, sorting, searching, integer arithmetic, hashing, and NP-complete problems.
3 Credits
Study models of computation that include Turing machines, pushdown automata, and finite automata. Learn grammars and formal languages, such as context-free and regular set. Better understand important problems, including language equivalence theorems and the halting problem.
STUDENTS MAY SELECT 1 OF THE FOLLOWING COURSES:
Students may also select the course that they did not take from the above section.
3 Credits
Analyze the fundamental issues in operating system design, including concurrent processes such as synchronizations, sharing, deadlock, and scheduling. Examine the relevant hardware properties of uniprocessor and multiprocessor computer systems.
3 Credits
Explore the fundamental concepts of database management systems, including data models, SQL query language, implementation techniques, the management of unstructured and semi-structured data, and scientific data collections.
3 Credits
Delve into the fundamentals of cybersecurity, including attacking and defending networks, searching for vulnerabilities, cryptography, reverse engineering, web security, static and dynamic analysis, malware, and forensics. Hands-on labs and projects included.
3 Credits
Examine core principles and ideas that enable the development of large-scale software systems, with a focus on programming. Explore abstraction, modularity, design patterns, specification, testing, verification, and debugging.
3 Credits
Investigate the methods that computers can use to learn from data or experience and make corresponding decisions. Topics explored include supervised and unsupervised learning, reinforcement learning, and knowledge extraction with applications to science, engineering, and medicine.
*If you do not have any academic or professional experience in Computer Science, you may be required to take CS 11 as an introductory course to the Post-Bacc.
Students that complete the required courses with satisfactory academic performance will be able to enroll in the online Master of Science in Computer Science program.
Master’s Track: Post-Baccalaureate Certificate in Computer Science to MS in Computer Science
The Master’s track requires the same courses as the certificate track, but does not require a second application to the MS program. Instead, after successfully completing the certificate courses, students will be able to continue pursuing the Master of Science in Computer Science.*
*In some circumstances, students may be able to start the MS program after successfully completing only two of the graduate-level post-baccalaureate courses. Students in that position should speak with their academic advisor at the time.