Theoretical computer science courses can help you learn algorithms, computational complexity, automata theory, and formal languages. You can build skills in problem-solving, mathematical reasoning, and algorithm analysis, that support tackling complex computational tasks. Many courses introduce tools like Python for algorithm implementation, LaTeX for typesetting mathematical documents, and software for simulating automata, allowing you to apply these concepts in practical scenarios.

Skills you'll gain: Cloud Deployment, Software Development Life Cycle, Open Web Application Security Project (OWASP), OpenShift, Containerization, Istio, Kubernetes, Node.JS, Software Architecture, Application Deployment, Restful API, Database Design, Cloud-Native Computing, Responsive Web Design, Git (Version Control System), Ajax, Grafana, Javascript, Azure DevOps, Software Development
Beginner · Professional Certificate · 3 - 6 Months

University of Colorado Boulder
Skills you'll gain: Graph Theory, Data Structures, Algorithms, Tree Maps, Theoretical Computer Science, Analysis, Python Programming
Build toward a degree
Advanced · Course · 1 - 4 Weeks

Skills you'll gain: File I/O, C and C++, Data Import/Export, C++ (Programming Language), Object Oriented Programming (OOP), Object Oriented Design, Data Validation, Programming Principles, Computer Programming, Data Integrity, Data Structures, Code Reusability, File Management, Data Store, Memory Management, Software Documentation, Computer Science, Maintainability, Computational Logic, Development Environment
Beginner · Specialization · 3 - 6 Months
Skills you'll gain: User Experience, UI/UX Research, User Experience Design, User Research, Design Thinking, User Interface and User Experience (UI/UX) Design, Design Research, Usability, User Centered Design, Design, Human Centered Design, Prototyping, Usability Testing, Sprint Retrospectives, Wireframing, Ideation, Sprint Planning
Beginner · Course · 1 - 4 Weeks
Stanford University
Skills you'll gain: Algorithms, Graph Theory, Theoretical Computer Science, Network Routing, Computational Thinking, Data Structures, Computer Science
Intermediate · Course · 1 - 4 Weeks

University of Colorado Boulder
Skills you'll gain: Theoretical Computer Science, Algorithms, Computational Thinking, Data Structures, Design Strategies, Quantum computing, Applied Mathematics, Python Programming, Analysis
Build toward a degree
Advanced · Course · 1 - 4 Weeks

University of California, Santa Cruz
Skills you'll gain: C++ (Programming Language), Object Oriented Programming (OOP), Object Oriented Design, Programming Principles, Software Design Patterns, Computer Programming, Algorithms, C (Programming Language), Software Design, Program Development, Graph Theory, Code Reusability, Computational Logic, Artificial Intelligence, Data Structures, Memory Management, File I/O, Simulations
Beginner · Specialization · 3 - 6 Months
Skills you'll gain: Threat Management, Cybersecurity, Cyber Risk, Computer Security Incident Management, Risk Management Framework, Risk Management, Incident Response, Vulnerability Management, Risk Mitigation, Security Information and Event Management (SIEM), Security Controls, Enterprise Security, Risk Analysis, Threat Detection, Open Web Application Security Project (OWASP), Asset Protection, System Monitoring, Auditing
Beginner · Course · 1 - 4 Weeks

Stanford University
Skills you'll gain: Data Structures, Graph Theory, Algorithms, Social Network Analysis, Network Analysis, Theoretical Computer Science, Probability & Statistics
Intermediate · Course · 1 - 4 Weeks
Duke University
Skills you'll gain: File I/O, UI Components, Object Oriented Design, Java Programming, Software Design, User Interface (UI) Design, Debugging, Web Design and Development, Software Engineering, Code Reusability, Hypertext Markup Language (HTML), Computer Programming, Program Development, Event-Driven Programming, Bioinformatics, Encryption, Javascript, Algorithms, Data Analysis, Cascading Style Sheets (CSS)
Beginner · Specialization · 3 - 6 Months

University of Alberta
Skills you'll gain: Computational Thinking, Video Game Development, Game Design, Software Quality (SQA/SQC), Problem Solving, Programming Principles, Computer Programming, Program Development, Algorithms, Python Programming, Computer Science, Debugging, Test Planning, Functional Testing, Other Programming Languages
Beginner · Course · 1 - 3 Months

Princeton University
Skills you'll gain: Combinatorics, Algorithms, Theoretical Computer Science, Mathematical Theory & Analysis, Data Structures, Advanced Mathematics, Mathematical Modeling, Probability, Applied Mathematics, Calculus
Advanced · Course · 1 - 3 Months