Fall Hours • COVID-19 Update

The Silicon Valley Campus is open 4–9:30 p.m. on Monday–Friday and 8 a.m.–5 p.m. on Saturday.

All campus visitors must be vaccinated, wear a mask, & submit a COVID symptom check. Visit our COVID page for updates.

Computer Programming
Certificate Program

Computer Programming

Language fluency for innovation

Establish Candidacy View Individual Courses

Certificate Description

Know your code—the foundation of innovation

Understanding how to write and test code has become a foundational criteria for tech jobs across most industries. In the UCSC Silicon Valley Extension Computer Programming certificate program you learn front end and back end web development technologies, gaining a strong foundation in software development. You learn to apply coding skills across platforms—from computers and mobile devices, to web development and the cloud.

Computer Programming certificate program objectives

  • Demonstrate the ability to develop logically structured software solutions through the use of a high-level programming language
  • Design object-oriented systems
  • Implement optimal solutions for software systems using advanced concepts of algorithms and computer science theory

Our Computer Programming students

  • Entry-level programmers or people changing careers
  • Software developers who want to enhance their programming knowledge
  • Non-technical professionals who want programming training to expand their career options
  • Hobbyists who need to learn programming to build their own applications
  • Project managers who want to communicate more effectively with programmers and better manage software projects

Estimated Cost (You pay only for courses you enroll in): Up to $5,600. | International Tuition Cost
Required Credits: Total Required: 5–7 courses (14 units). Take 1 required course and 1 core course (6 units) and 3–5 electives (8–8.5 units). End with certificate of completion review.
Duration: A full-time student can complete the certificate in 6–12 months.


Course Units Fall Winter Spring Summer
1. Required Course(s):
Object-Oriented Analysis and Design 3.0 + +
2. Core Course(s): (Choose 1)
C++ Programming, Comprehensive 3.0 Spring TBD
Java Programming, Comprehensive 3.0
Python for Programmers 3.0 Fall Flexible
3. Electives: C Programming
C Programming, Advanced 3.0
C Programming for Beginners 2.0
4. Electives: C++ Programming
C++ Programming, Comprehensive 3.0 Spring TBD
Data Structures and Algorithms Using C++ 3.0
5. Electives: Java Programming
Data Structures and Algorithms Using Java 3.0
Java Programming, Comprehensive 3.0
Java Programming for Beginners 2.0 Fall Flexible Summer Flexible
Java Threads 3.0
JUnit Test Framework 1.5
6. Electives: Scripting Languages
Data Structures and Algorithms Using Python 3.0 Fall Flexible
Python for Programmers 3.0 Fall Flexible
Python: Object-Oriented Programming 2.0
Python Programming for Beginners 1.5
7. Electives: Windows Programming
C# Programming, Comprehensive 3.0
8. Electives: Mobile Device Programming
Mobile Application Development - Android and iOS, Advanced 3.0
Mobile Application Development - Android and iOS, Introduction 3.0 Winter Flexible
9. Electives: Adv. Programming and Concepts
Computational Intelligence, Introduction 1.5
Data Engineering with Hadoop 3.0
Go Programming, Fundamentals 3.0
Introduction to Machine Learning 3.0 Winter Flexible
Mastering Data Structures and Algorithms: A Practical Approach 3.0
Completion Review:
Computer Programming Certificate Completion Fee None

Certificate Inquiry Form

Contact Us
Speak to a student services representative.

Call (408) 861-3860

Envelope extension@ucsc.edu

Requisite Knowledge

Please review the course descriptions to ensure that you have taken necessary prerequisites or meet the requirements through job experience or previous education.

Advisory Board


Certificate Program Chair

BINEET SHARMA, M.S.C.S., is a seasoned technologist with more than 30 years’ experience in technical architecture, upper level management, professional teaching, and entrepreneurship. He has held a variety of leadership roles in all aspects of the software development life cycle, including CEO of CashonAd, a mobile advertising app platform; and co-founder of OnTick, a technical analysis tool for stock market data positions. Previously he held management and technical positions at F1Soft International, Soffront Software, Concuity, National Data Corp., and Epiphany. He is also the founding president of the Computer Association of Nepal, which focuses on regional training, education, and technical support to Nepalese communities in need. Sharma has master’s degrees in both computer science and mining engineering from Southern Illinois University, Carbondale and is a certified ScrumMaster. His passion for teaching technology has inspired more than 100 computer classes throughout Silicon Valley and the greater Bay area on topics ranging from operating systems, data structures and C to Visual C++, and Java programming. He has served as program chair of the UCSC Silicon Valley Extension Computer Programming certificate program since 2019.

Certificate Program Advisory Committee

Chair/Instructor, Computer Programming Program
UCSC Silicon Valley Extension, Santa Clara, CA

Senior Research Software Architect, IBM Research
San Francisco Bay Area, CA

Principal software engineer, Xilinx
Instructor, Computer Programming Program
UCSC Silicon Valley Extension, Santa Clara, CA

Establish Candidacy

Establish candidacy in a certificate or specialization

Once you create your student account, you can establish candidacy in a certificate or specialization program any time during your studies.

The benefits of enrolling early
  • Lock in your certificate requirements.This means that even if program requirements change, the requirements to complete your certificate will remain the same for you
  • Receive program updates
  • Set your intention
  • It’s free

To complete a program, you must enroll in the certificate program before enrolling in the Certificate Completion Review.

You have five years to complete all necessary courses in a certificate program or three years to finish up a specialization program.

All the necessary units in a certificate must be completed within this window.* The clock begins on the first day of your first course in the certificate program. For example, if you started a course on Sept. 5, 2017, you would have to complete all of the required units in this certificate by Sept. 4, 2022.


Enrolling in a certificate program does not trigger the beginning of the five-year window. It begins the first day of the first course that applies to a certificate program. The Certificate Completion Review process does not have to occur within the five-year timeframe.

For more information: How do I get my certificate or specialization?

* Students participating in a special program, such as workforce, international, Personal Financial Planning, or curriculum partner programs (Udacity, Microfacturing Institutes) may have a shorter completion requirement.

Establish Candidacy

Grade Requirements

Please note that only letter grades of C- or higher may be applied to a certificate, and in some programs, students may have more stringent requirements. Students in most employer- and government-sponsored payment programs, such as workforce development, as well as international students on F-1 visas, need to maintain a B average to meet their requirements. Personal Financial Planning students have additional grade requirements for individual courses to attain a certificate.

See Grading and Credits Policy for further information.

Our recent stories on Computer Programming